关于php:密码的正则表达式必须包含至少8个字符,至少1个数字,字母和特殊字符

Regex for password must contain at least 8 characters, at least 1 number, letters and special characters

我需要一个正则表达式,它至少应该有一个数字字符,允许使用大小写字母,允许使用特殊字符

1
/^.*(?=.{6,10})(?=.*\d)(?=.*[a-zA-Z]).*$

但它对最多10个字符无效。


下面的正则表达式将限制您的长度并允许特殊字符。

1
^(?=.*\d)(?=.*[a-zA-Z]).{6,10}$


好像你想要这样的东西,

1
^(?=.*\d)(?=.*?[a-zA-Z])(?=.*?[\W_]).{6,10}$

上面的regex只允许6到10个字符。它还检查至少一个数字、大小写字母和至少一个特殊字符(字母和数字以外的字符)。