【发布时间】:2013-12-08 14:57:24
【问题描述】:
如果没有字符重复 4 次或更多次,我想构造一个匹配密码的正则表达式。
我想出了一个正则表达式,如果有一个字符或一组字符重复 4 次,它将匹配:
(?:([a-zA-Z\d]{1,})\1\1\1)
只有当字符串不包含重复项时,有什么方法可以匹配吗?我尝试了Regular expression to match a line that doesn't contain a word? 中建议的方法,因为我认为正/负前瞻的某种组合会成功。但我还没有找到工作示例。
重复是指字符串中任意位置的任意数量的字符
示例 - 不应匹配
aaaaxbc
阿里巴巴
x14aaaabc
示例 - 应该匹配
abcaxaxaz
(a 出现了 4 次但没问题,我想过滤掉重复的模式)
【问题讨论】:
-
你能用你问题中的一些例子来解释一下吗
-
只有在字符串的后面或任何地方才考虑重复?
-
您走在正确的轨道上:否定环顾四周通常是正则表达式中处理这种情况的方式。
标签: regex validation non-repetitive