我需要生成一个具有以下条件的密码正则表达式:
有效密码必须至少包含8个字符。它必须至少有一个大写、一个小写和一个非字母字符。
到目前为止,我创建了这个模式:
((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,50})
但它仍然使用没有非字母字符的字符串。我该怎么做?感谢
你可以试试这个
|->match 8 or more chars
-----
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[^a-zA-Z]).{8,}$
------------ ---------- ---------------
| | |->matches further only if there is atleast 1 non alphabetic char
| |->matches further only if there is atleast 1 a-z
|->matches further only if there is atleast 1 A-Z