2012-04-10 4 views
11

Gibt es in Delphi vordefinierte Zeichensätze, um zu prüfen, ob ein Zeichen ein Buchstabe ist?Prüfen, ob Zeichen in Delphi (Unicode) geschrieben wird

In Cocoa verwende ich so etwas wie

if ([[NSCharacterSet whitespaceCharacterSet] characterIsMember:character]) 

Ich weiß, dass ich in Delphi tun

if c in ['A'..'Z'] then 

aber wird diese Abdeckung ausländische akzentuierte Zeichen wie Á, A, U, E, ... .?

Was wäre der effizienteste Weg, dies in Delphi zu überprüfen. Ich muss überprüfen, ob eine Zeichenfolge vollständig aus Buchstaben besteht.

Antwort

17

Versuchen Sie, die Character.TCharacter.IsLetter oder Character.IsLetter Funktionen

+0

Bingo.That ist genau das, was ich needed.Thanks mit! –

+3

Dies kann nur ein Teil der Geschichte sein, da Surrogatpaare nicht berücksichtigt werden. –

+2

TCharacter ist eine Klasse, die erstellt wurde, um mit Unicode-Zeichen UTF-16 zu arbeiten. IsLetter ist eine in dieser Klasse deklarierte Funktion. Es sollte mit grundlegenden Zeichen und den in der Frage aufgeführten Zeichen umgehen. –

Verwandte Themen