我正在尝试创建一个正则表达式,以满足以下标准:
- 至少1个小写字母
- 至少1个大写字母
- 至少1个数字
- 没有空格
- 至少8个字符
- 没有特殊字符
到目前为止,我得到了这个表达式;
^(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.\s).*$
然而我无法让它起作用。 任何帮助都将不胜感激。 我从来不擅长解谜 :)
.*
才会忽略你的“不允许空格/特殊字符”的规则,而且(?=.\s)
的先行断言是错误的(你可能意思是(?!.*\s)
或者(?=\S*$)
)。^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[A-Za-z\d]{8,}$
但是为什么您要阻止用户在密码中使用非字母数字字符呢?