加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

用于强密码验证的PHP正则表达式

发布时间:2020-12-13 21:28:46 所属栏目:PHP教程 来源:网络整理
导读:参见英文答案 Reference – Password Validation????????????????????????????????????1个 我在网上看到了以下正则表达式. (?=^.{8,}$)((?=.*d)|(?=.*W+))(?![.n])(?=.*[A-Z])(?=.*[a-z]).*$ 它只在字符串中有效: * contain at least (1) upper case let
参见英文答案 > Reference – Password Validation????????????????????????????????????1个
我在网上看到了以下正则表达式.

(?=^.{8,}$)((?=.*d)|(?=.*W+))(?![.n])(?=.*[A-Z])(?=.*[a-z]).*$

它只在字符串中有效:

* contain at least (1) upper case letter
   * contain at least (1) lower case letter
   * contain at least (1) number or special character
   * contain at least (8) characters in length

我想知道如何转换这个正则表达式,以便它检查字符串

* contain at least (2) upper case letter
* contain at least (2) lower case letter
* contain at least (2) digits
* contain at least (2) special character
* contain at least (8) characters in length

好吧,如果它包含至少2个上,下,数字和特殊字符,那么我不会
需要8个字符的长度.

特殊字符包括:

`~!@#$%^&*()_-+=[]|{};:'”.,/<>?

解决方法

适应该正则表达式的最佳方法是将其删除并编写一些代码.所需的正则表达式将是如此漫长而复杂,您在编写它之后两小时就无法读取它.等效的PHP代码将是乏味的,但至少你将能够理解你所写的内容.

顺便说一句,这并不意味着对你的抨击.在大多数情况下,正则表达式几乎不适合密码强度验证,但是您的要求比平常更复杂,而且它不值得.另外,你发布的正则表达式是垃圾.永远不要相信你发现在网络上漂浮的正则表达式.或者任何代码,就此而言.或者,哎呀,什么. : – /

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读