我正在为密码验证创建一个regexp,以便在Java应用程序中用作配置参数.
正则表达式是:
^.*(?=.{8,})(?=..*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$
Run Code Online (Sandbox Code Playgroud)
密码策略是:
至少8个字符
至少包含一位数字
包含至少一个较低的alpha char和一个较高的alpha char
在一组特殊字符中包含至少一个字符(@#%$^等)
不包含空格,标签等
我只缺少第5点.我无法检查空格,制表符,回车等等的正则表达式.
谁能帮助我?
我正在尝试使用正则表达式来满足密码至少 6 个字符的最低要求;1 个大写字母、1 个小写字母和 1 个数字。看起来很容易吗?我没有任何正则表达式“向前看”的经验,所以我会这样做:
if(!pwStr.match(/[A-Z]+/) || !pwStr.match(/[a-z]+/) || !pwStr.match(/[0-9]+/) ||
pwStr.length < 6)
//was not successful
Run Code Online (Sandbox Code Playgroud)
但我想将其优化为一个正则表达式,并在此过程中提高我的正则表达式技能。