常用密码规则-正则

2023-12-10  本文已影响0人  云高风轻

1. 前言

  1. 登录注册基本都会有,那也就离不开密码的设置
  2. 但是密码会有很多种需求,这里简单列举几个

2. 密码不能包含特殊字符,且必须大于等于6位小于等于16位

  1. 这是基于饿了么 表单验证的自定义规则
  var validatePwd = (rule, value, callback) => {
        if (!value) {
            callback(new Error('密码不能为空'))
        } else {
            let reg = /^(?![^a-zA-Z]+$)(?!\D+$)\S{6,16}$/
            if (reg.test(value)) {
                callback()
            } else {
                return callback(new Error('请输入6-16位密码,且密码不能包含特殊字符!'))
            }
        }
    }

3. 6-16位,至少包含字母(大小写)、数字两种组合

  1. 这里就只写正则了 ,其他逻辑都一样
let reg = /^(?=.*[a-z])(?=.*\d)[^]{6,16}$/
    if (!reg.test(value)) {
        callback(new Error(msg))
      } else {
        callback()
      }

4. 正常强度验证

  1. 数字字母特殊字符,8-16位,必须两种组合
let $test1 =
        /(?!.*[\u4E00-\u9FA5\s])(?!^[a-zA-Z]+$)(?!^[\d]+$)(?!^[^a-zA-Z\d]+$)^.{8,16}$/

5. 中验证

  1. 必须包含数字、小写字母、和字符中的三种
     let $test2 =
        /^(?![a-z]+$)(?![0-9]+$)(?![\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-z0-9\W_!@#$%^&*`~()-+=]{8,16}$/
    

6. 强验证

  1. 必须包含数字和小写字母 大写字母 特殊符号三种
      let $test3 = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,16}$/


参考资料


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉
上一篇 下一篇

猜你喜欢

热点阅读