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}

结束:$/

相关推荐
Neptune11 分钟前
js入门指南之Promise:从''承诺''到理解,告别回调地域
前端·javascript
进击的荆棘5 分钟前
C++起始之路——类和对象(上)
开发语言·c++
老朱佩琪!5 分钟前
在Unity中实现状态机设计模式
开发语言·unity·设计模式
YaeZed6 分钟前
Vue3-watchEffect
前端·vue.js
boombb7 分钟前
H5 图片路径不统一,导致线上部分图片无法按预期展示(assetPrefix 与 basePath 行为不一致)
前端
FuckPatience7 分钟前
C# BinarySearch 的返回值
开发语言·数据结构·c#
栀秋6668 分钟前
深入浅出AI流式输出:从原理到Vue实战实现
前端·vue.js·前端框架
柳成荫9 分钟前
Chromium 渲染机制
前端
尼古拉斯·纯情暖男·天真·阿玮11 分钟前
[JavaEE初阶] 进程和线程的区别和联系
java·开发语言
UIUV11 分钟前
JavaScript流式输出技术详解与实践
前端·javascript·代码规范