【发布时间】:2013-03-13 13:31:02
【问题描述】:
我要为以下要求编写一个正则表达式
- 至少一个字符
- 至少一位数
- 长度必须为 8
- 至少一个特殊字符(可以是任何特殊字符)
前三个很简单,但找不到限制至少特殊字符的方法(任何可能的特殊字符,如 ',":*^%>? 等)。
【问题讨论】:
-
您将无法构造此正则表达式。好吧,理论上你可以,但它既不简单也不可读和可维护。为什么不逐个字符检查密码字符串,看看它是否符合要求?
-
基本上 a 正则表达式不是适合这项工作的工具。
-
@J0HN:我不敢苟同。这些东西很容易用正则表达式表达。而且它并不比检查每个字符的一个或几个循环更难阅读或维护。可能除了不识字的人。但是你总是可以添加 cmets 来解释意图。
-
@Joey,好吧,你刚刚让我皈依了你的宗教 :) 我没有想到前瞻 :) 实际上我喜欢正则表达式,当它们以正确的方式使用时。 Hoverwer there are some reason 在这种情况下使用字符串循环。
标签: javascript regex