当前位置: 首页 > 知识库问答 >
问题:

复杂密码设置的正则表达式8

江志业
2023-03-14

我试过这个表达-

^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$

此正则表达式将强制执行以下规则:

至少一个大写英文字母,(?=.*[A-Z])

至少一个小写英文字母,(? =. *?[ a-z])

至少一个数字,(? =. *?[ 0-9])

至少一个特殊字符,(?=.*?[#?!@$%^

最小长度为8。{8,}(带锚点)

正则表达式将如何满足以下要求。

  • 13个字符或更长的密码只需要小写字母
  • 密码必须至少包含8个字符
  • 8到13个字符之间的密码需要以下4类字符中的至少3个:
    • 大写字母
    • 小写字母
    • 数字
    • 符号

共有1个答案

胥博文
2023-03-14

虽然单个正则表达式可能不是实现这一点的最可读/最理智的方法,但它实际上相当简单:

^(?=.*?[a-z])(.{13,}|(?=.*?[A-Z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,12})$

我只是在长度上添加了一个更改,这样13个字符只需要[a-z],而8-12个字符(由于排序可能会忽略上界)需要完整的monty。

 类似资料:
  • 本文向大家介绍Javascript校验密码复杂度的正则表达式,包括了Javascript校验密码复杂度的正则表达式的使用技巧和注意事项,需要的朋友参考一下 目前使用的正则表达式如下: 对应的验证规则是:密码中必须包含字母、数字、特称字符,至少8个字符,最多30个字符。 这个正则表达式在C#可以正常使用,但是在Javascript中却有问题。 请问是在js中如何写这样的正则表达式? 测试字符串:a1

  • 我需要密码规则。以下是规则。 密码必须遵循以下准则: > 至少有八个字符长 包含这4个选项中的3个:小写字母、大写字母、数字或特殊字符 当用户指定不符合上述规则的密码时,返回消息说明: 密码长度必须至少为8个字符,并包含以下4个选项中的3个: 小写字母(a-z) 大小写字母(A-Z) 数字(0-9) 特殊字符 (! @#$%^ 请帮助我获得一个正则表达式来处理上述条件。 我感谢你的帮助。以下是我的

  • 问题内容: 我在网上找到了一个脚本,并且在JavaScript中有一个密码正则表达式。我仍然想使用它,但是为了获得更高的安全性,我也想使用PHP来验证我的密码,但是我对正则表达式毫无用处。 要求: 必须至少8个字符 必须包含至少1个数字 必须至少包含一个大写字符 必须至少包含一个小写字符 如何构造正则表达式字符串以满足这些要求? 问题答案: 我发现在一个大的正则表达式中执行此操作有点像代码维护的噩

  • null 编辑:我的疑问是,当我组合和时,为什么在那里不起作用

  • 有人能帮我理解为什么这不起作用吗 出于某种原因,它接受包含大小字母的密码,并验证包含数字和小写字母的密码。但它应该只验证是否满足了for规则中的3条。

  • 我有以下密码验证规则: 至少8个字符 我试图找到这个规则的正则表达式模式,最接近的是: 但这并不适用于所有规则。 我对正则表达式是新手,如果有任何可以学习正则表达式的资源,我将不胜感激。