开发者问题收集

正则表达式密码允许特殊字符javascript

2016-03-21
3027

我正在使用以下正则表达式(从这里获得)来验证密码:

/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{6,}$/

我不太熟悉正则表达式,但我如何允许它允许特殊字符,如!@#$%^&*?

谢谢!

2个回答

只需将您想要的其他字符添加到括号内的部分即可。

生成的正则表达式为:

/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@#$%^&*?]{6,}$/

Regex101 已测试

4castle
2016-03-21

我认为,如果您要包含的所有特殊字符都是您提到的字符,并且您想要的密码至少包含 8 个字符,则此正则表达式 /^[\w!@#\$%\^&\*\?]{8,}$/ 将满足您的需要。

Hamza Abbad
2016-03-21