Melvin Cowznofski: Suche regulären Ausdruck

Beitrag lesen

Hallo,

wie immer, wenn ich mich mit regulären Ausdrücken beschäftige, komme ich leider zu keiner Lösung. Eine Formulareingabe soll mittels preg_match() auf ihre Gültigkeit überprüft werden. In diesem Fall bedeutet gültig:

* Die Eingabe darf nur aus Klein- und Großbuchstaben incl. Ä, ä, Ö, ö, Ü, ü und ß bestehen.
* Die Eingabe muss aus _mindestens_ 3 dieser Zeichen bestehen.
* Wenn die Eingabe mehr als diese 3 Zeichen hat, _dann_ darf auch ein Leerzeichen vorkommen. Aber nur nach den ersten 3 Zeichen.

Meine bisherige Lösung ist:

~[1]{3,}([A-Za-zÄäÖöÜüß]|\s)?$~

Das bedeutet für mich: Am Anfang mindestens 3 Zeichen ohne Leerzeichen, gefolgt von Zeichen und/oder Leerzeichen in keiner oder beliebiger Anzahl. Das ist aber offenbar falsch, weil zB. "Blaaa Blo" nicht gefunden wird.

Kann mir bitte wer weiterhelfen und mir sagen, wo mein Denkfehler liegt bzw. wie ich den reulären Ausdruck umschreiben muss?

Und meine Zusatzfrage: Könnte man den Ausdruck auch so erweitern, dass auch die letzten 3 Zeichen der Eingabe nur aus den Buchstaben bestehen darf? Also Leerzeichen nur, wenn die Eingabe mit mindestens 3 Buchstaben beginnt und mit mindestens 3 Buchstaben aufhört. Ginge das?

Mit lieben Grüßen

Melvin Cowznofski

--

Melvin Cowznofski
What – me worry?

  1. A-Za-zÄäÖöÜüß ↩︎