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}

结束:$/

相关推荐
JAVA面经实录9171 分钟前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
陈随易36 分钟前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星1 小时前
javascript之事件代理/事件委托
前端
周杰伦fans1 小时前
AutoCAD .NET 二次开发:深入理解 EntityJig 的工作原理与正确实现
开发语言·.net
陈随易2 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
Bat U3 小时前
JavaEE|多线程初阶(七)
java·开发语言
谭欣辰3 小时前
C++ 排列组合完整指南
开发语言·c++·算法
foundbug9994 小时前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
XDH_CS4 小时前
MySQL 8.0 安装与 MySQL Workbench 使用全流程(超详细教程)
开发语言·数据库·mysql