![]() |
Erste Zeichen eines Strings
Hi zusammen ...
Meine Frage :?: : wie kann ich am einfachsten überprüfen ob das erste Zeichen eines Strings ein Buchstabe ist?? Danke für eure Hilfe! :D |
Die Buchstaben erstrecken sich in der ASCII-Tabelle von Position 65 bis Position 122. Das erste Zeichen eines Strings s ist über s[1] erreichbar.
Folglich sieht der Code so aus:
Delphi-Quellcode:
if Byte(s[1]) in [65..122] then /...
|
Hi !
var str: string; ... if (ANSIUPPERCASE(str[1])>='a') and (ANSIUPPERCASE(str[1])<='z') then ... dass war's schon !! Gruß, Helld |
Hallo Helldriver,
wenn Du schon die Funktion 'AnsiUpperCase' benutzt, müsstest Du dann nicht gegen Grossbuchstaben vergleichen? Und was ist mit Umlauten? Die werden zwar von AnsiUpperCase korrekt verarbeitet, werden aber vom Vergleich nicht erkannt... |
Oh, stimmt, mein Fehler !!!
Die Routine von Chewie ist sowieso besser ! Die gleicht alles ab. Gruß, Helld |
Thx @ Chewie!
Es funktioniert! |
kleiner Tip, wer die ASCII-Tabelle nicht mag schreibt einfach
Delphi-Quellcode:
Gruß Oki
If S[1] in ['a'..'Z'] then ...
|
Zitat:
|
Zitat:
|
Was ein Problem:
Delphi-Quellcode:
Jetzt nicht wieder meckern von wegen: Muss aber 91 sein, und so. ICh hab jetzt nicht nachgeschaut, ob das erste falsche oder das letzte richtige angegeben wurde. :twisted:
... in [65..90, 97..122]...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz