javascript密码验证规则,数字、字母、特殊符号两种以上

在验证密码复杂的正则表达试中,几位码友有发布过从两种字符里选两种的,从三种字符里选有三种的。

今天我提一个从三种里选两种的。有喜欢的朋友拿去用。

密码须包含数字、字母、特殊符号两种以上,且不少于8位,不多于32位。

javascript 复制代码
        password: [
          { required: true, message: '请输入密码', trigger: 'blur' },
          { pattern: /^((?=.*[A-Za-z])(?=.*\d)|(?=.*[A-Za-z])(?=.*[!@#$%^&*()_+\-\=])|(?=.*\d)(?=.*[!@#$%^&*()_+\-\=]))[A-Za-z\d!@#$%^&*()_+\-\=]{8,31}$/, 
            message: '密码须包含数字、字母、特殊符号两种以上,且不少于8位', trigger: 'blur' }
        ]

我验证了一下,大概是对的,如果不对,私我哈。

把正则表达式拆分一下:

开头:/^

由字母和数字组成:((?=.*[A-Za-z])(?=.*\d)

或由字母和符号组成:|(?=.*[A-Za-z])(?=.*[!@#$%^&*()_+\-\=])

或由数字和符号组成:|(?=.*\d)(?=.*[!@#$%^&*()_+\-\=]))

字母、数字、符号不少于8位,不少于32位:[A-Za-z\d!@#$%^&*()_+\-\=]{8,31}

结束:$/

相关推荐
Carsene几秒前
开源项目文档架构设计:Git Submodule 实现文档与代码的优雅分离
前端·后端
橘子131 分钟前
C++11 lambda表达式
开发语言·c++
2401_857918293 分钟前
分布式系统安全通信
开发语言·c++·算法
C^h3 分钟前
RTthread消息队列学习
开发语言·算法·嵌入式
Z思学4 分钟前
promise 有几种状态 async/await 和promise 有什么关系
前端
openallzzz5 分钟前
【面经分享】Java实习
java·开发语言
han_5 分钟前
JavaScript设计模式(四):发布-订阅模式实现与应用
前端·javascript·设计模式
27669582928 分钟前
租车帮(悟空)订单查询算法分析
java·服务器·前端·悟空·悟空app·租车帮·租车帮逆向
鬼蛟18 分钟前
Spring Boot
java·开发语言
用户3266584037418 分钟前
如何初始化 TypeScript + Node.js 项目
javascript