Ik wil een reguliere expressie om dat te controleren:
Een wachtwoord bevat ten minste acht tekens, waaronder ten minste één cijfer en bevat zowel kleine als hoofdletters en speciale tekens, bijvoorbeeld #
, ?
, !
.
Het kan niet je oude wachtwoord zijn of je gebruikersnaam, "password"
, of "websitename"
bevatten
En hier is mijn validatie expressie die is voor acht karakters inclusief een hoofdletter, een kleine letter, en een nummer of speciaal karakter.
(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$"
Hoe kan ik het schrijven voor een wachtwoord moet uit acht tekens bestaan waarvan één hoofdletter, één speciaal teken en alfanumerieke tekens?
Minimaal acht tekens, ten minste één letter en één cijfer:
"^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$"
Minimaal acht tekens, ten minste een letter, een cijfer en een speciaal teken:
"^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,}$"
Minimaal acht tekens, ten minste een hoofdletter, een kleine letter en een cijfer:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$"
Minimaal acht tekens, ten minste een hoofdletter, een kleine letter, een cijfer en een speciaal teken:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$"
Minimaal acht en maximaal tien tekens, ten minste een hoofdletter, een kleine letter, een cijfer en een speciaal teken:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,10}$"
Je mag deze regex gebruiken met meerdere lookahead assertions (voorwaarden):
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$
Deze regex zal deze regels afdwingen:
(?=.*?[A-Z])
(?=.*?[a-z])
(?=.*?[0-9])
(?=.*?[#?!@$%^&*-])
.{8,}
(met de ankers)Gewoon een kleine verbetering voor @anubhava's antwoord: Aangezien speciale tekens beperkt zijn tot die in het toetsenbord, gebruik dit voor elk speciaal teken:
^(?=.*?[A-Z])(?=(.*[a-z]){1,})(?=(.*[\d]){1,})(?=(.*[\W]){1,})(?!.*\s).{8,}$
Deze regex zal deze regels afdwingen: