Hi,
ich versuche gerade per RegEx (in PHP per preg_match) einen Vornamen zu matchen. Als gültiger Vorname ist definiert:
- Es darf keine Zahl vorkommen
- Leerzeichen und Bindestrich sind erlaubt
- Alle Buchstaben von A bis Z sind erlaubt
Allerdings matcht meine RegEx auch Dinge wie:
- -Hans Peter
- 234Peter
- 23Pet32er (hier kommt als Ergebnis Pet heraus)
- 23-Hans-Joac32him (hier kommt als Ergebnis Hans-Joac heraus)
Das sollte natürlich nicht sein.
Meine RegEx sieht bisher so aus:
#[a-zA-Z]+(?(?=\s?-?[a-zA-Z]+)\s?-?[a-zA-Z]+)#
Vielleicht ist auch RegEx der falsche Ansatz? Ich könnte auch einfach alle Buchstaben in einen gültigen Pool werfen und sobald ein Zeichen nicht in diesem Pool ist, ist der Name falsch, aber vielleicht geht es auch per RegEx.
Grüße