四时宝库

程序员的知识宝库

记录一个验证密码格式的正则(java验证密码强度的正则表达式)

最近工作中遇到一个验证密码格式的正则问题,密码格式要求如下:

密码为6-20位数字、字母或下划线,至少包括其中两种,以字母开头

然后自己写过几个,也在网上找过,都没完全符合该密码规则。后来将之前用过的几种规则进行各种综合、试错,终于找到了能验证该密码规则的正则。

废话不多说,上正则:

/^[a-zA-Z](?![a-zA-Z]+$)\w{5,19}$/

下面是几种对于该正则的测试:

const passwordReg = /^[a-zA-Z](?![a-zA-Z]+$)\w{5,19}$/
passwordReg.test('aaaaa1') // true
passwordReg.test('aaaaa_') // true
passwordReg.test('a111111') // true
passwordReg.test('a_______') // true
passwordReg.test('Aaaaa1') // true
passwordReg.test('1aaaaa1') // false
passwordReg.test('_aaaaa1') // false
passwordReg.test('aaaaaa') // false
passwordReg.test('111111') // false
passwordReg.test('______') // false


第一次记录,以后会将更多前端开发中遇到的问题来此做记录。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接