AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Stringvergleich nicht wie gewünscht
Thema durchsuchen
Ansicht
Themen-Optionen

Stringvergleich nicht wie gewünscht

Ein Thema von padavan · begonnen am 6. Okt 2005 · letzter Beitrag vom 7. Okt 2005
Antwort Antwort
Seite 2 von 4     12 34      
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 09:37
Zitat von ripper8472:
wenn das einer nach delphi uebersetzen kann, viel spass damit. hab ich ausm netz gefischt.
funktioniert eventuell besser als das vorgefertigte etwas aus der borland-trickkiste.
das wird ihn nicht begeistern, weil er sich ja auch für Gross/Kleinschreibung interessiert...
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#12

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 09:38
Ich glaub das ist nich das was er wollte, weil da die Groß-/Kleinschreibung NICHT berücksichtigt wird (tolower)!

edit: Shit RavenIV war schneller
  Mit Zitat antworten Zitat
Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#13

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 09:41
Stringvergleich unter Beachtung der Groß-/Kleinschreibung:

if S1 = S2 then ... Stringvergleich ohne Beachtung der Groß-/Kleinschreibung:

if UpperCase(S1) = UpperCase(S2) then ... Wo liegt das Problem?
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#14

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 09:50
Zitat von Grishnak:
Wo liegt das Problem?
Das Problem liegt darin, dass dein aufgezeigter Vergleich abhängig vom eingestellten Gebietsschema ist, CompareStr aber "wird vom aktuellen Gebietsschema nicht beeinflusst" (Zitat aus der OH).
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#15

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 09:53
war mir doch so, dass das "=" auch Gross/Kleinschreibung beachtet
als Referenz: Delphi-Referenz -> im unteren Drittel:
Zitat:
Das Vergleichen von zwei Strings erfolgt mit dem Gleichheitszeichen. Dabei wird Groß- und Kleinschreibung beachtet.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#16

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 10:28
@dfried: Kannst du mir mal ein Beispiel zeigen, wie das Gebietsschema einen Stringvergleich beeinflussen kann? Da kann ich mir nix drunter vorstellen Und: ist das hier überhaupt wichtig?
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#17

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 10:38
@Grishnak
Ein konkretes Beispiel kann ich dir leider so spontan auch nicht geben. ABer vielleicht einen Teil aus der OH zum Thema (zu finden bei der Funktion AnsiCompareStr)
Zitat:
Hinweis: Bei den meisten Gebietsschemas haben Kleinbuchstaben einen kleineren Wert als die entsprechenden Großbuchstaben. Dies widerspricht der ASCII-Sortierfolge, in der Kleinbuchstaben einen größeren Wert haben. Wenn Sie S1 auf 'a' und S2 auf 'A' setzen, gibt AnsiCompareStr daher einen Wert kleiner als Null zurück, während CompareStr mit denselben Argumenten einen Wert größer als Null liefert.
Borland hat warscheinlich nicht ohne Grund die Funktion CompareStr und AnsiCompareStr geschaffen

Ob das hier von Bedeutung ist, muss dir padavan beantworten!
Ich bin nur darauf eingegangen weil er in seinem Post selbst schon CompareStr erwähnt hat.
  Mit Zitat antworten Zitat
Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#18

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 10:45
@dfried: ich dachte, es geht hier darum, zu prüfen ob zwei Strings gleich sind (oder nicht), aber nicht, wie "ungleich" sie sind! Naja, lassen wir den Thread-Ersteller zu Wort kommen...
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 13:12

Wow, "eure" Diskussion liest sich spannender als Harry Potter.

Also danke für das Wort.
Ich meinte für meinen Fall das schon so, das zwei Strings auf Gleichheit überprüft werden sollen.
Wie ungleich sie sind, wäre mir dann eigentlich egal.
Bei einen Passwort ist es ja das gleiche, Groß-Kleinschreibung und die Länge sind da ja auch relevant.

Comparestring vergleicht also auf Gleichheit unter allen Gesichtpunkten?
(ich kann´s erst heute Abend prüfen, hab auf der Arbeit leider kein Delphi)

Dann hätte ich einfach nur einen anderen Fehler gemacht.....
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#20

Re: Stringvergleich nicht wie gewünscht

  Alt 6. Okt 2005, 13:35
Wenn ich 'A' und 'B' ('A' = 'B') vergleiche wird intern ja auch der ASCII-Code nämlich 65 und 66 verglichen.
Somit wird auch 'A' und 'a' auf den ASCII-Code "überpürft" nämlich 65 und 97.
Ich kann ja auch zu 'A' eins dazu addieren --> 'A' + 1 = 65 + 1 = 66 = 'B'.
Ich könnte auch 'A' und 'B' miteinander addieren --> 'A' + 'B' = 65 + 66 = 131 = 'ƒ'
Wobei hier der Compiler wegen Typeninkompatiblität meckern sollte (habs in Delphi noch nicht ausprobiert).
Also warum sollte es bei längeren Zeichenketten nicht funktionieren?

Oder meint ihr es hängt von der verwendeten ASCII-Tabelle ab? Aber in welcher Tabelle würde dann 'A' = 'a' sein
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz