![]() |
PHP - RegEx
Zufällig jemand hier der da durchblickt und mir eben einen regulären Ausdruck erstellen kann?
Der RegEx muss auf alle beliebigen Folgen von Zeichen+Zahlen+Buchstaben zutreffen, nicht jedoch auf reine Buchstaben, Zeichen oder Zahlen Strings. Whitespace ist ebenfalls erlaubt. Beispiel: String = Ergebnis der preg_match()-Funktion abcde = kein Treffer 12345 = kein Treffer §$%& = kein Treffer 12abc = trifft zu 13$% = trifft zu ab%& = trifft zu usw. Ich brauch das nur ein einziges mal um die User-Passwörter zu validieren macht also keinen Sinn, 500 Seitige Tutorials zu wälzen. Gruß Battle Toad |
[a-zA-Z]{1,} [0-9]{1,} [!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~]{1,}
Bin mir grad nich sicher, ob das richtig ist, aber so ungefähr sollts aussehen^^ |
Zitat:
Also folgende Kombinationen wären gültig. [a-zA-Z] [0-9] [a-zA-Z] [!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~] [0-9] [!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~] (Es fehlen die Umklammerungen und ODER-Verknüpfungen) |
Hm... das mit dem Mindestens scheint zwar nicht zu klappen, bringt mich aber auf eine Idee...
Für alles andere reicht mein wissen über RegEx ja aus, nur bei PW's wird's haarig... Ich probiers mal aus und poste dann meinen (Miss?)Erfolg... |
So, nach einigem hin und her (Beschreibungen/Tutorials lesen) hab ich eine Lösung gefunden, die kurz und halbwegs elegant ist, allerdings denk ich, dass jemand mit mehr Kenntnis der Materie die noch optimieren kann:
'/([A-Za-z]+\W+|\W+[A-Za-z]+|\d+\D+|\D+\d+)+/' Ich frage hiermit im Grunde nach: BUCHSTABE plus SONDERZEICHEN oder SONDERZEICHEN plus BUCHSTABE oder ZAHL plus NICHT-ZAHL oder NICHT-ZAHL plus ZAHL Die Dopplung gefällt mir noch nicht, aber ich weiß nicht, wie ich die weg bekomme ohne dass der Ausdruck wieder ungenau wird. Zwei verschiedene Operatoren wie + und ? zu verwenden hinter den einzelnen Elementen beeinflusst nur ob der andere Operator greedy oder ungreedy ist... Also wenn das noch wer lösen kann bin ich happy, ansonsten schreib ich das in den Code. Die Dopplung brauch ich, a die Beispiele auch durchmixt Sinn ergeben müssen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:17 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.