Yahoo Benutzername Regex
-
05-07-2019 - |
Frage
Ich brauche einen (php) regex Yahoos Benutzername Regeln entsprechen:
Mit 4 bis 32 Zeichen und mit einem Buchstaben beginnen. Sie können Buchstaben, Zahlen, Unterstrichen verwenden, und einen Punkt (.).
Lösung
/^[A-Za-z](?=[A-Za-z0-9_.]{3,31}$)[a-zA-Z0-9_]*\.?[a-zA-Z0-9_]*$/
oder etwas kürzer:
/^[a-z](?=[\w.]{3,31}$)\w*\.?\w*$/i
Andere Tipps
/[a-zA-Z][a-zA-Z0-9_]*\.?[a-zA-Z0-9_]*/
Und überprüfen, ob strlen ($ username)> = 4 und <= 32.
A einen Punkt Grenze? Das ist schwierig.
Ich bin kein regex Experte, aber ich denke, das es bekommen würde, mit Ausnahme, dass:
[A-Za-z][A-Za-z0-9_.]{3,31}
Vielleicht könnten Sie für das überprüfen. Anforderung separat?
Lookaheads Verwenden Sie könnte wie folgt vor:
^(?=[A-Za-z](?:\w*(?:\.\w*)?$))(\S{4,32})$
Weil Sie nicht angegeben, welche Art von Regex Sie brauchte ich eine Menge von Perl 5 kompatibel Material hinzugefügt. Wie (?: ... )
für Nicht-Capturing Pars.
. Hinweis: Ich habe die fehlende Nähe paren zurück in