Hallo,
ich möchte gern prüfen, ob im row[5] Buchstaben sind, aber auch Umlaute , franz. Zeichen etc., nur keine Zahlen und andere Sonderzeichen:
if (!row[5].All(Char.IsLetter))
So funktioniert es nicht, das geht nur auf die Buchstaben.
Grüsse,
Unsere Website
iPhone Programmierung | Android Programmierung
Hallo Ploetzi,
die Doku sagt:
Gibt an, ob das angegebene Unicode-Zeichen als Unicode-Buchstabe kategorisiert wird.
Darunter sollten eigentlich auch Umlaute und Buchstaben mit Akzentzeichen darunter fallen. Die beiden folgenden Zeilen geben jedenfalls true aus:
Console.WriteLine (Char.IsLetter ('ä'));
Console.WriteLine (Char.IsLetter ('à'));
Versucht mal herauszufinden, welches Zeichen genau das Problem macht.
herbivore
Hallo Gnozo,
klar, kann man.
Vermutlich meinst du \w.
Allerdings kommt es auch da darauf an, welche Zeichen als Wortzeichen angesehen werden. Und das hängt wiederum von den Optionen für reguläre Ausdrücke ab, insbesondere von RegexOptions.ECMAScript (siehe ECMAScript-Vergleichsverhalten) und RegexOptions.CultureInvariant (siehe Vergleiche mit der invarianten Kultur).
Es ist also bei Regex in diesem Fall nicht unbedingt einfacher oder klarer als bei Char.IsLetter.
herbivore