当前位置: 首页 > news >正文

使用正则前瞻检查密码强度

使用正则前瞻检查密码强度

题目要求

要求密码必须包含大小写字母,并且至少包含 $@,_. 中的一个特殊字符。

在这道题中,我们可以使用正则表达式的前瞻运算来实现。

const reg = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[$@,_.])[\da-zA-Z$@,_.]{6,12}/;const flag1 = reg.test("123Aac,");
const flag2 = reg.test("12+3Aac,");
console.log(flag1); // true
console.log(flag2); // false

在上述代码中,我们使用了正则表达式 /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[$@,_.])[\da-zA-Z$@,_.]{6,12}/ 来匹配密码的强度。让我们来解释一下这个正则表达式的含义:

  • ^:匹配字符串的开始位置。
  • (?=.*\d):使用正向前瞻来匹配至少一个数字。
  • (?=.*[a-z]):使用正向前瞻来匹配至少一个小写字母。
  • (?=.*[A-Z]):使用正向前瞻来匹配至少一个大写字母。
  • (?=.*[$@,_.]):使用正向前瞻来匹配至少一个特殊字符 $@,_.
  • [\da-zA-Z$@,_.]{6,12}:匹配包含数字、大小写字母和特殊字符 $@,_. 的字符串,长度在 6 到 12 之间。

通过使用正则表达式的 test() 方法,我们可以判断一个字符串是否符合密码强度的要求。在上述例子中,flag1 的值为 true,因为字符串 "123Aac," 符合密码强度的要求,而 flag2 的值为 false,因为字符串 "12+3Aac," 不包含特殊字符 $@,_.

通过这个正则表达式,我们可以方便地检查密码的强度,并确保密码符合要求。

http://www.lryc.cn/news/197078.html

相关文章:

  • react+ts手写cron表达式转换组件
  • 民安智库(第三方市民健康素养调研)居民健康素养调查的重要性及实施步骤
  • Linux | vim的入门手册
  • B053 项目部署
  • 视觉Slam面试题(不定时更新)
  • 从入门到进阶 之 ElasticSearch 节点配置 集群篇
  • UE4中无法保存项目问题
  • 解剖—顺序表相关OJ练习题
  • NAT网关在阿里云的应用
  • 操作系统体系结构和OS
  • Flutter ☞ 常量
  • C++ 配置VSCode开发环境
  • Arduino_STM32整理贴
  • MoeCTF 2023 Web+Jail wp
  • 494.目标和 474.一和零
  • 模拟电源与数字电源之间的区别
  • P5461 赦免战俘
  • 【工具】转码silk格式为mp3
  • 蓝桥杯每日一题2023.10.18
  • 大数据开发中的秘密武器:探索Hadoop纠删码的奇妙世界
  • 华为数通方向HCIP-DataCom H12-831题库(单选题:301-310)
  • Vite 踩坑 —— require is not defined
  • 彻底理解操作系统与内核的区别!
  • 微信小程序4
  • OpenCV14-图像平滑:线性滤波和非线性滤波
  • kafka_2.10启动Kafka broker
  • 【配置环境】SQLite数据库安装和编译以及VS下C++访问SQLite数据库
  • Confluence 自定义展示页面
  • 使用C#的Socket从头实现的带有文件上传和下载功能的HTTP服务器
  • 【OSPF Loading、FULL状态与display ospf peer brief命令、OSPF的数据库讲解】