博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
密码强度正则表达式 – 必须包含大写字母,小写字母和数字,至少8个字符等...
阅读量:5096 次
发布时间:2019-06-13

本文共 2595 字,大约阅读时间需要 8 分钟。

密码强度正则表达式 – 必须包含大写字母,小写字母和数字,至少8个字符等发表于 2017年09月8日 by 天涯孤雁 被浏览 3,953 次 分享到: 2小编推荐:掘金是一个高质量的技术社区,从 ECMAScript 6 到 Vue.js,性能优化到开源类库,让你不错过前端开发的每一个技术干货。各大应用市场搜索「掘金」即可下载APP,技术干货尽在掌握..需要一个密码强度正则表达式在用户注册时校验用户密码强度:密码至少8个字符,包括1个大写字母,1个小写字母和1个数字或特殊字符,例如#,?,!。网上搜索了一些解决方案分享给大家。 方案一至少8-16个字符,至少1个大写字母,1个小写字母和1个数字,其他可以是任意字符:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,16}$/或者:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[\s\S]{8,16}$/其中 [\s\S] 中的\s空白符,\S非空白符,所以[\s\S]是任意字符。也可以用 [\d\D]、[\w\W]来表示。至少8个字符,至少1个大写字母,1个小写字母和1个数字,不能包含特殊字符(非数字字母):^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$至少8个字符,至少1个字母,1个数字和1个特殊字符:^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$至少8个字符,至少1个大写字母,1个小写字母和1个数字:^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$至少8个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符:^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&]{8,}最少8个最多十个字符,至少1个大写字母,1个小写字母,1个数字和1个特殊字符:^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&]{8,10}方案二还有,你可以使用这个正则表达式:^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$这个正则表达式将强制执行这些规则:至少1个大写字母English letter,(?=.*?[A-Z])至少1个小写英文字母,(?=.*?[a-z])至少1位数字,(?=.*?[0-9])至少有1个特殊字符,(?=.*?[#?!@$%^&*-])最小8个长度.{
8,}方案三正则表达式没有AND运算符,所以编写正则表达式与有效密码匹配是非常困难的,当有效性被某些东西和其他东西等定义时…但是,正则表达式确实有1个OR运算符,所以只需应用DeMorgan的定理,并编写1个与无效密码相匹配的正则表达式:任何少于8个字符或任何没有数字或任何没有大写字母或任何没有小写字母或任何没有特殊字符的任何东西。所以:^(.{0,7}|[^0-9]*|[^A-Z]*|[^a-z]*|[a-zA-Z0-9]*)$,如果有什么匹配的话,这是1个无效的密码。方案四由于特殊字符仅限于键盘中的特殊字符,因此可用于任何特殊字符:^(?=.*?[A-Z])(?=(.*[a-z]){1,})(?=(.*[\d]){1,})(?=(.*[\W]){1,})(?!.*\s).{8,}$这个正则表达式将强制执行这些规则:– 至少1个大写英文字母– 至少1个小写英文字母– 至少1位数字– 至少1个特殊字符– 最少8个长度方案五根据我的情况,我遇到了最受欢迎的答案。例如,我的验证失败,其中包含;或[等字符。我对 white-listing 我的特殊字符不感兴趣,所以我用[^\w\s]作为测试 – 简单地把非字符(包括数字)和非空格字符放在一起。总而言之,这是对我有用的至少8字符至少1数字字符至少1小写字母至少1大写字母至少1特殊字符/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,}$/ 简单演示涵盖各种情况方案六导入JavaScript文件jquery.validate.min.js。您可以使用此方法:JavaScript 代码:$.validator.addMethod("pwcheck", function (value) {return /[\@\#\$\%\^\&\*\(\)\_\+\!]/.test(value) && /[a-z]/.test(value) && /[0-9]/.test(value) && /[A-Z]/.test(value)});至少1个大写英文字母至少1个小写英文字母至少1位数字至少1个特殊字符方案七尝试这个:– 最少6个字符– 至少有1个大写字符– 至少1个小写字符– 至少1个特殊字符表达式:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&.])[A-Za-z\d$@$!%*?&.]{6, 20}/可选特殊字符:至少1个特殊字符至少1个数字特殊字符是可选的最少6个字符,最多16个字符表达式:/^(?=.*\d)(?=.*[a-zA-Z]).{6,20}$/如果不需要最小和最大条件,则删除.{
6, 16}– 6是最小字符数限制– 20是最大字符限制– ?=表示匹配表达式 正文完。下面还有一个推广让最好的人才遇见更好的机会!互联网行业的年轻人,他们面对着怎样的职业瓶颈、困惑与未来选择?过去,这鲜有人关心。资深的职场人,也多半优先选择熟人去推荐机会。100offer致力于改变现状,帮互联网行业最好的人才发现更好的机会。使用 100offer.com 或 100offer App ,可以一周内获得中国、美国等数千家优质企业的工作机会。 http://www.css88.com/archives/8100

 

 

转载于:https://www.cnblogs.com/cexm/p/7737538.html

你可能感兴趣的文章
git .gitignore 文件不起作用
查看>>
digitalocean --- How To Install Apache Tomcat 8 on Ubuntu 16.04
查看>>
【题解】[P4178 Tree]
查看>>
cer证书签名验证
查看>>
【深度学习】caffe 中的一些参数介绍
查看>>
QML学习笔记之一
查看>>
App右上角数字
查看>>
小算法
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>
Windows Phone开发(4):框架和页 转:http://blog.csdn.net/tcjiaan/article/details/7263146
查看>>
python asyncio 异步实现mongodb数据转xls文件
查看>>
TestNG入门
查看>>
【ul开发攻略】HTML5/CSS3菜单代码 阴影+发光+圆角
查看>>
IOS-图片操作集合
查看>>
IO—》Properties类&序列化流与反序列化流
查看>>
jquery实现限制textarea输入字数
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
ActiveMQ与spring整合
查看>>