leider nochmal: reguläre Ausdrücke
-
Hallo!
Nachdem mir beim letzten Mal schnell geholfen wurde, noch eine Frage zu regulären Ausdrücken.
Ein kompletter String (Länge min. 1 Zeichen, Reihenfolge beliebig) soll nur aus Groß- und Kleinbuchstaben (ohne Umlaute), Zahlen und dem Unterstrich bestehen dürfen.
Beispiel: Tunnel_2630
Der reguläre Ausdruck dazu sollte sein: ^[A-Za-z0-9_]+$
Leider klappt das nicht und der String oben wird als nicht gültig angezeigt.
Seltsamerweise wird dann auch der String
2630
als ungültig markiert...
Lasse ich ^ und $ weg, dann sind (logischerweise) auch Strings wie
Tunnel-2630
TUNNEL.2630
Tunnäl_2630gültig.
Was mache ich da falsch bzw. habe es nicht kapiert...??? (scheint irgendwas mit dem Unterstrich zu sein aber \_ hilft leider nicht)
Ciao
OkkaPapa
-
Hi,
also bei mir geht das:
> echo Tunnel_2630 |egrep '^[A-Za-z0-9_]+$'
Welche regulären Ausdrücke verwendest Du denn? Eventuell hast Du keine extended regexes.
-
Hallo!
Ich nehme die C-Lib regex.h.
Da werde ich mich wohl mit den Extended Expressions mal umtun...
Danke!
OkkAPapa
-
Hey,
löst zwar nicht Dein Problem, aber beim Testen von Regulären Ausdrücken ist das Tool richtig nützlich:
http://regexbuilder.codeplex.com/
-
OkkaPapa schrieb:
Hallo!
Ich nehme die C-Lib regex.h.
Da werde ich mich wohl mit den Extended Expressions mal umtun...
Danke!
OkkAPapa
Na dann einfach mal das Flag REG_EXTENDED übergeben. Dann sollte es gehen.