MudGuard: Regex - "Zeichen muß enthalten sein"

Beitrag lesen

Hi,

3 positive Lookaheads, je einer für .*[a-z] und .*[A-Z] und .*[0-9], und dann noch normal auf [1]+$ (+ ggf. durch {x,y} für min/max-Länge prüfen.

Warum willst du denn die restlichen Zeichen ausschließen? Es war nicht gefordert, nur a-zA-Z0-9 zuzulassen.

Hatte ich übersehen, wäre aber ja durchaus üblich, daß ein Paßwort aus einem bestimmten Zeichensatz bestehen muß, und aus n von m Zeichengruppen mind. eins vorhanden sein muß.

Ansonsten hatte ich das Handbuch so verstanden, dass PHP Assertions mit variabler Länge nicht mag.

Wie Chris schon schrieb: bei Lookbehinds.
Problem dabei ist, daß die Regex-Engine wissen will, ab welcher Position sie suchen soll. Bei Lookahead ist's klar: ab der aktuellen Position. Bei Lookbehind ist das nur klar, wenn die Assertion einen String fixer Länge hat (aktuelle Position minus fixe Länge).

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.

  1. a-zA-Z0-9 ↩︎