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}

结束:$/

相关推荐
BreezeJiang1 分钟前
Vue 3 流式输出实战:ReadableStream + DeepSeek API 实现打字机对话
前端
用户EasyAdminBlazor8 分钟前
EasyAdminBlazor 第十篇:数据导入导出——批量处理不再麻烦
前端·后端
饮茶三千9 分钟前
电子保函模板编辑器实战二:HTML→FTL 编译转换的设计与实现
前端·vue.js·设计模式
ricardo197314 分钟前
SSR / SSG 性能对比:Next.js 三种渲染模式实测数据
前端·面试
Kel14 分钟前
Node.js 本质:从全脉络视角理解运行时原理
javascript·设计模式·node.js
LuminousCPP16 分钟前
C 语言集中实践全记录:顺序表 + 单链表原理实现与通讯录项目实战【附可运行源码】
c语言·开发语言·数据结构·经验分享·笔记
兰令水19 分钟前
hot100【acm版】【2026.7.13打卡-java版本】
java·开发语言·数据结构·算法·leetcode·面试
ikoala30 分钟前
Codex 小白入门:从安装到插件、MCP、Skills,一篇把配置讲明白
前端·javascript·后端
铅笔侠_小龙虾1 小时前
Rust 学习(4)-函数与注释
开发语言·学习·rust
雪隐1 小时前
用Flutter做背单词APP-04一个人,2周,从零撸出一个背单词App
前端·人工智能·后端