我在这里寻找了一些想法,但仍然似乎难以想出满足我的要求的正则表达式。 我需要一个正则表达式来检查密码格式,标准如下: 至少1个大写字母 至少1个数字 只能使用字母数字字符(不能使用特殊字符) 至少8个字符长 我正在使用的正则表达式是: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$ 然而,这也允许像!$&这样的字符。 我需要进行哪些修改才能使其停止接受这些特殊字符?
^(?=.*[\!\#\@\$\%\&\/\(\)\=\?\*\-\+\-\_\.\:\;\,\]\[\{\}])(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$
不能允许特殊字符呢? - Jo Smo[a-zA-Z\d]{8,}
替换为.{8,}
。 - Totoa?
允许一个a
或根本没有a
。只是不知道在等号(=)后面放一个问号(?)会发生什么。 - Jo Smo(?=.....)
是正向前瞻。请参考http://www.regular-expressions.info/lookaround.html,但这在某些正则表达式中不起作用。如果您有更多问题,最好提出另一个问题,而不是在评论部分进行讨论 :-) - Toto