Hallo liebe c#-Entwickler,
ich habe eine Funktion, die mir einen bool
zurückgibt,
ob ein string
einem Muster entspricht.
Sie funktioniert auch so ganz gut, würde jedoch gerne das Leerzeichen zulassen.
private bool IsAlphabetic(string ToCheck)
{
Regex AlphaPattern = new Regex("^[a-zA-Z]*$");
return AlphaPattern.IsMatch(ToCheck);
}
Kann mir jemand sagen, wie ich das Leerzeichen zulasse?
Ich bedanke mich schonmal für das gute Tutorial über Reguläre Ausdrücke hier im Forum. Es hat mir sehr geholfen. Das Problem mit dem Leerzeichen konnte ich leider nicht lösen.
Mit freundlichen Grüßen
GIGGS
Einfach ein Leerzeichen zu den erlaubten Charactern einfügen:
^[a-zA-Z ]*$
/w
oder war es backslash?
\w ist "word", du meinst wohl \s welches für whitespaces aller Art steht und dann aber auch Tabs sowie Zeilenumbrüche matcht also mehr als verlangt.
Lg XXX
Vielen Dank schon mal!
Das klappt nun mit dem Leerzeichen.
Nun habe ich schnell bemerkt, dass ich doch noch weitere Sonderzeichen brauche.
Sehe ich es richtig, das man einfach die einzelnen Zeichen in den regulären Ausdruck eintrage?
z.B. Erweiterung um die Zeichen . und &:
new Regex("^[a-zA-Z.& ]*$")
MfG GIGGS
Edit:
Danke! Habe rausgefunden, das es so klappt, wenn man die einzelnen Zeichen einbindet!
Vielen Dank an euch!
Hallo GIGGS,
Sehe ich es richtig, das man einfach die einzelnen Zeichen in den regulären Ausdruck eintrage?
Ja, wenn du weitere Sonderzeichen benötigst, fügst du diese der Zeichenklasse hinzu.
Du musst nur manchmal darauf achten, dass bestimmte Zeichen innerhalb bzw. außerhalb der Zeichenklasse verschiedene Bedeutungen haben, wie z.B. der Punkt (.): Innerhalb der Zeichenklasse ist es ein Punkt, außerhalb steht er für ein beliebiges Zeichen (außer dem Newline).
m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
Aber auch dort hilft natürlich das Internet 😃
Reguläre Ausdrücke - Ein Zeichen aus einer Auswahl
beste Grüße
zommi