【发布时间】:2011-06-23 18:52:39
【问题描述】:
我希望能在正则表达式方面提供一些帮助,该正则表达式可以测试字符串的一些内容。
我需要用户输入一个长度至少为 10 个字符、至少包含 1 个数字、至少 1 个特殊字符和至少 1 个大写字母的值。
任何帮助将不胜感激。
谢谢!
【问题讨论】:
标签: regex coldfusion-9
我希望能在正则表达式方面提供一些帮助,该正则表达式可以测试字符串的一些内容。
我需要用户输入一个长度至少为 10 个字符、至少包含 1 个数字、至少 1 个特殊字符和至少 1 个大写字母的值。
任何帮助将不胜感激。
谢谢!
【问题讨论】:
标签: regex coldfusion-9
为每个约束设置一个单独的正则表达式:
.{10,},[0-9],[^0-9a-zA-Z]
[A-Z]
并确保字符串匹配所有这些正则表达式。
如果您真的需要它,您可以使用前瞻断言将它们全部组合到一个正则表达式中:
(?=.*[0-9])(?=.*[^0-9a-zA-Z])(?=.*[A-Z]).{10,}
【讨论】:
如果没有正则表达式,长度要求可能更容易测试。 其他测试也可以作为单独的测试更好地工作:
号码:[0-9]+
大写:[A-Z]+
特殊(标点符号):[[:punct:]]+
试图将它们组合成一个正则表达式可能会产生一些相当笨拙且不清楚的东西
【讨论】: