[PHP] RegEx für neue Profilfelder
[PHP] RegEx für neue Profilfelder
Hallo,
ich habe gestern und heute das Forum (Version 2) etwas hinsichtlich der Profileingabefelder angepasst.
Nur würde ich die Felder gerne validieren lassen, habe von RegEx aber Null Ahnung und nach Durchlesen eines Tutorials bekomme ich das irgendwie immer noch nicht hin, da einige Schlupflöcher da sind...
Kann mir vielleicht jemand helfen, und zwar würde ich gerne folgende Felder per RegEx validieren lassen:
PLZ: 5 Zahlen von 0 - 9 erlaubt
Ort: Buchstaben und - erlaubt (keine Leerzeichen)
Telefonnr: erst 3 bis 5 Zahlen, dann / und dann mind. 4 Zahlen
Handynr: erst 4 Zahlen, dann / und dann mind. 6 Zahlen
Straße: Erstes Zeichen = Großbuchstabe, dann Buchstaben, am Ende soll dann str. oder -Str. stehen, erlaubte Sonderzeichen: -
Hausnr: mind. eine bis max. drei Zahlen, ggf. noch 1 Buchstabe dahinter (gibt ja z.B. auch 124a als Hausnr)
Kann mir da bitte jemand helfen? Wäre echt super!
Vielen Dank und Grüße,
Felix
ich habe gestern und heute das Forum (Version 2) etwas hinsichtlich der Profileingabefelder angepasst.
Nur würde ich die Felder gerne validieren lassen, habe von RegEx aber Null Ahnung und nach Durchlesen eines Tutorials bekomme ich das irgendwie immer noch nicht hin, da einige Schlupflöcher da sind...
Kann mir vielleicht jemand helfen, und zwar würde ich gerne folgende Felder per RegEx validieren lassen:
PLZ: 5 Zahlen von 0 - 9 erlaubt
Ort: Buchstaben und - erlaubt (keine Leerzeichen)
Telefonnr: erst 3 bis 5 Zahlen, dann / und dann mind. 4 Zahlen
Handynr: erst 4 Zahlen, dann / und dann mind. 6 Zahlen
Straße: Erstes Zeichen = Großbuchstabe, dann Buchstaben, am Ende soll dann str. oder -Str. stehen, erlaubte Sonderzeichen: -
Hausnr: mind. eine bis max. drei Zahlen, ggf. noch 1 Buchstabe dahinter (gibt ja z.B. auch 124a als Hausnr)
Kann mir da bitte jemand helfen? Wäre echt super!
Vielen Dank und Grüße,
Felix
- S2B
- Ehemaliges Teammitglied
- Beiträge: 3258
- Registriert: 10.08.2004 22:48
- Wohnort: Aachen
- Kontaktdaten:
Auf die Schnelle (ungetestet):
Bei der Straße würde ich an deiner Stelle ein bisschen "gnädiger" mit den erlaubten Zeichen sein. Zum Beispiel gibt es ja auch Straßennamen, die aus mehreren Worten bestehen (Unterer Höhenweg, An der Lehmgrube etc.). Bei der Telefonnummer würde ich minimal 3 anstatt 4 Zahlen nehmen, solche Nummern gibt es nämlich auch.
- PLZ: [0-9]{5}
- Ort: [-A-ZÄÖÜa-zäöüß]+
- Telefonnummer: [0-9]{3,5}/[0-9]{4,}
- Straße: [A-ZAÄÜ][a-zäöüß-](?:str\.|-Str\.)
- Hausnummer: [0-9]{1,3}[a-z]?

Bei der Straße würde ich an deiner Stelle ein bisschen "gnädiger" mit den erlaubten Zeichen sein. Zum Beispiel gibt es ja auch Straßennamen, die aus mehreren Worten bestehen (Unterer Höhenweg, An der Lehmgrube etc.). Bei der Telefonnummer würde ich minimal 3 anstatt 4 Zahlen nehmen, solche Nummern gibt es nämlich auch.
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
- S2B
- Ehemaliges Teammitglied
- Beiträge: 3258
- Registriert: 10.08.2004 22:48
- Wohnort: Aachen
- Kontaktdaten:
Code: Alles auswählen
(?:(?:+|00)[0-9]{2}|0)[0-9]{2,5}/[0-9]{3,}
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
- Sanchez17
- Mitglied
- Beiträge: 913
- Registriert: 10.12.2005 22:21
- Wohnort: Moers / Sevilla
- Kontaktdaten:
Hi,
auch wenn das nicht im Sinne des Thread Erstellers war, würde ich gern mal eine Frage einbinden...
Mit RegEx komm ich selber leider noch nicht klar. Daher würde ich mich freuen, wenn jmd kurz erklären könnte, wieso wann welches Zeichen benutzt wurde:
(?:str\.|-Str\.) <-- da versteh ich beispielweise kein Wort.
Wäre jemand so freundlich?
Gruß
Michel
auch wenn das nicht im Sinne des Thread Erstellers war, würde ich gern mal eine Frage einbinden...
Mit RegEx komm ich selber leider noch nicht klar. Daher würde ich mich freuen, wenn jmd kurz erklären könnte, wieso wann welches Zeichen benutzt wurde:
[A-ZAÄÜ][a-zäöüß-] <-- das Kann ich mir noch Erklären.[A-ZAÄÜ][a-zäöüß-](?:str\.|-Str\.)
(?:str\.|-Str\.) <-- da versteh ich beispielweise kein Wort.
Wäre jemand so freundlich?

Gruß
Michel
Viva el betís, mi amor
Wir gehn voran, als euer zwölfter Mann, scheiß egal wie weit, ob Sturm oder Schnee, MSV Duisburg oé

Wir gehn voran, als euer zwölfter Mann, scheiß egal wie weit, ob Sturm oder Schnee, MSV Duisburg oé
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
?: - Optional
| - Entweder Oder
() - Gruppenbildung
\ - Escape Zeichen (-> Das nächste Zeichen als Zeichen und nicht als Befehl interpretieren, in dem Fall den Punkt der eigentlich für jedes Zeichen stehen könnte als echten Punkt interpretieren.)
Also Optional kann an der Stelle noch str. oder -Str. stehen. Ich würde da übrigens auch Leerzeichen erlauben, es soll ja auch so Adressen wie "Alte Kölner Straße" geben...
Statt ?: kann man auch ? hinter die Klammer setzen, das ergibt in dem Fall das gleiche.
| - Entweder Oder
() - Gruppenbildung
\ - Escape Zeichen (-> Das nächste Zeichen als Zeichen und nicht als Befehl interpretieren, in dem Fall den Punkt der eigentlich für jedes Zeichen stehen könnte als echten Punkt interpretieren.)
Also Optional kann an der Stelle noch str. oder -Str. stehen. Ich würde da übrigens auch Leerzeichen erlauben, es soll ja auch so Adressen wie "Alte Kölner Straße" geben...
Statt ?: kann man auch ? hinter die Klammer setzen, das ergibt in dem Fall das gleiche.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Ich kenne das Problem. Als ich die Dinger das erste Mal gesehen habe waren das auch Böhmische Dörfer....
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
- S2B
- Ehemaliges Teammitglied
- Beiträge: 3258
- Registriert: 10.08.2004 22:48
- Wohnort: Aachen
- Kontaktdaten:
Kleine Korrektur: ein ?: am Anfang der Klammer bewirkt, dass der Inhalt der Klammer nicht extra festgehalten wird, wohingegen ein einfaches ? nach einer Klammer den Inhalt der Klammer optional macht.gn#36 hat geschrieben:?: - Optional
[...]
Statt ?: kann man auch ? hinter die Klammer setzen, das ergibt in dem Fall das gleiche.
Btw: Am Anfang wird sich wohl jeder mit Regulären Ausdrücken schwer tun, ist ja auch kein Wunder bei den kryptischen Zeichenfolgen, die da immer zustande kommen. Auch werden 99% aller Programmierer (zu denen gehöre ich *g*) nur bis zum Grundwissen von Regulären Ausdrücken vordringen, da man das meiste einfach zu selten oder gar nicht benötigt.
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.