【发布时间】:2019-05-22 02:28:10
【问题描述】:
我有以下单独的正则表达式我想使用 AND 条件组合它们,我正在使用它们来验证密码
.[A-Z]+. - 验证大写(一个字母大写最小)
.[0-9]+. - 验证数字(至少一个数字)
.[a-z]+. - 验证小写字母(最少一个小写字母)
.{8,} - 验证最小字符 8
.[^A-Za-z0-9]. - 验证特殊字符(至少一个特殊字符)
(.)\1 - 验证连续字符(无连续字符)
现在我正在分别验证每个字符,但我只想在一个函数中进行验证
我尝试了以下组合方式
/^((.)\1)(.[A-Z]+.)(.[a-z]+.)(.[0- 9]+.)(.[^A-Za-z0-9].).*$/
上面没有所有的表达方式,但我试图展示我是如何做到的。
【问题讨论】:
-
如果您用英语解释您的字符串必须匹配的规则,那将非常有帮助。显示好的字符串的清晰示例并显示坏字符串的清晰示例并说明它们为什么不好。
-
最好单独进行,这样您就可以向用户提供有关密码要求的反馈
-
@rmaddy 我的错,添加解释
-
@LeoDabus 实际上它导致了嵌套 if else 的糟糕代码,我不想显示任何特定消息
-
@vishaldharankar stackoverflow.com/questions/31954416/…。顺便说一句,您可以使用新的字符属性来进行字符串验证,而无需使用正则表达式
标签: ios swift regex regex-negation regex-group