要求:数字和英文字母的组合,必须至少含有一个大写英文字符,至少一小写英文字符,至少一个一个数字,不包含特殊字符,8-31位。下面是我的正则校验password: /(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[a-zA-Z0-9]{8,31}/如果刚输入的字符满足既包含大小写英文字母,又包含数字,后面接特殊字符是检验成功的,但正常是不可以的。比如字符串 hjHghdhgd45HGHJ45#$%^&*,是检验成功的,但这样是错误的。指点这个正则到底问题在哪
1 回答
至尊宝的传说
TA贡献1789条经验 获得超10个赞
因为你的字符串存在符合配置的内容, 而又没有做起始结束限制. 加上 ^$
就好了./^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[a-zA-Z0-9]{8,31}$/
添加回答
举报
0/150
提交
取消