Reguläre Ausdrücke: Formularfeld validieren...
corner
- php
Hallo zusammen!
Vielleicht kann mir jemand helfen. Ich möchte Formulareingaben mit Hilfe regulärer Ausdrücke validieren. Speziell für ein Feld, in das der Name eingegeben werden soll, sollen nur Buchstaben zulässig sein. Das Problem ist, dass Zeichenmengen wie ‘\w’ keine ausländischen Extrazeichen wie z.B. Akzente enthalten. Bei Namen wie André oder Søren funktioniert das Abfrageschema somit nicht.
Meine Frage ist: Gibt es irgendeine Zeichenklasse, die auch solche Buchstaben mit umfasst, oder muss ich alle Zeichen, die mir einfallen und relevant erscheinen, manuell in das Suchmuster eingeben?! Bisher lautet mein Muster: /[^a-zäöüßéèôâ\s-]/i
Kennt jemand ein Online-Tutorium für reguläre Ausdrücke, in dem man auch umfassend über Zeichenklassen nach dem Schema ‘[[:alnum:]]’ aufgeklärt wird?
Vielen Dank für die Hilfe
corner
Hi,
Meine Frage ist: Gibt es irgendeine Zeichenklasse, die auch solche Buchstaben mit umfasst, oder muss ich alle Zeichen, die mir einfallen und relevant erscheinen, manuell in das Suchmuster eingeben?! Bisher lautet mein Muster: /[^a-zäöüßéèôâ\s-]/i
\p{letter}
(wobei ich nicht weiß, wie weit PHP diese Syntax unterstützt)
Kennt jemand ein Online-Tutorium für reguläre Ausdrücke
Nicht online, aber hervorragend: Jeffrey E.F. Friedl, Mastering Regular Expressions, O'Reilly Verlag
Nicht billig, aber preiswert.
cu,
Andreas
Hallo corner,
Ich möchte Formulareingaben mit Hilfe regulärer Ausdrücke validieren. Speziell für ein Feld, in das der Name eingegeben werden soll, sollen nur Buchstaben zulässig sein. Das Problem ist, dass Zeichenmengen wie ‘\w’ keine ausländischen Extrazeichen wie z.B. Akzente enthalten. Bei Namen wie André oder Søren funktioniert das Abfrageschema somit nicht.
Meine Frage ist: Gibt es irgendeine Zeichenklasse, die auch solche Buchstaben mit umfasst, oder muss ich alle Zeichen, die mir einfallen und relevant erscheinen, manuell in das Suchmuster eingeben?! Bisher lautet mein Muster: /[^a-zäöüßéèôâ\s-]/i
Wie wäre es mit '/\A[[:alpha:]]+\z/'?
Kennt jemand ein Online-Tutorium für reguläre Ausdrücke, in dem man auch umfassend über Zeichenklassen nach dem Schema ‘[[:alnum:]]’ aufgeklärt wird?
http://www.pcre.org/pcre.txt
Der gesuchte Abschnitt lautet "POSIX CHARACTER CLASSES".
Und wie man unter "Unicode character properties" schön nachlesen kann, kann die PCRE-Library zwar mit "\p{L}" etwas, aber mit "\p{Letter}" nichts anfangen.
MffG
EisFuX