hallo,
folgenden regex habe ich:
~[1]{1}[äöüß\w\d]{2,14}$~i
Auf das Muster soll zutreffen, dass am Anfang keine Zahl steht. Um das zu bewerkstelligen, habe ich ^ am Anfang und dann [äöüß\w]{1} stehen. Also alle deutschen Buchstaben in Groß und Kleinschreibung sind erlaubt. Das muss am Anfang einmal vorkommen! Danach dürfen 2 bis 14 Zeichen von den deutsche Buchstaben und Zahlen vorkommen. Sie dürfen auch mit einer Zahl enden.
if(preg_match('~^[äöüß\w]{1}[äöüß\w\d]{2,14}$~i','12234jasdj'))
{
echo 'Not Good!';
}
Insgesamt also zwischen 3 und 15 Buchstaben.
Allerdings gibt er jetzt "Not Good" aus. Warum? Wie muss der Ausdruck richtig lauten? Wenn ich das mit Zahlen mache, funktioniert es ja auch, siehe:
^[1-9]{1}[\d]{0,10}$
Hier darf z.B. keine Null am Anfang stehen und kann bis zu 11 Zeichen lang sein. Ist selbst dieser Ausdruck am Ende Falsch?
Bitte um Aufklärung :(
Danke,
Tim
äöüß\w ↩︎