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}

结束:$/

相关推荐
东风破_4 小时前
Docker 基础:为什么需要容器?
前端·后端·nginx
东风破_4 小时前
Docker 实战:使用 Nginx 作为容器入口代理 Node 服务
前端·后端·nginx
剩下了什么5 小时前
float32 与 float64 精度陷阱:如何在 Go 中避免错误使用
开发语言·后端·golang
你别说话了5 小时前
Vue项目解决跨域
前端·javascript·vue.js
指尖时光.5 小时前
Three.js 超全入门综合案例
开发语言·javascript·ecmascript
唐青枫6 小时前
http-server:别再双击 index.html,一条命令把目录变成网站
前端·javascript
暴力求解6 小时前
Linux网络---传输层协议TCP(二)
linux·服务器·开发语言·网络·tcp/ip
吴声子夜歌6 小时前
Java面试题——基础(一)
java·开发语言
网安蟹佬霸6 小时前
OSINT开源情报收集实战:从信息搜集到资产测绘(2026最新万字保姆级指南)
前端·网络·安全·web安全·网络安全·开源
小庞在加油6 小时前
WinDbg实战:QT/跨平台项目死锁与无响应问题排查指南
开发语言·qt·windbg·工具