我需要一个正则表达式,确保字符串包含至少3个不同的字符(任何类型)。
示例,aqaqaq无效,因为它仅由2个不同的字符组成。 aqwaqa或aq3aqa或aq!aqa有效。
正则表达式可以吗?
语言:Javascript / PHP
谢谢
答案 0 :(得分:4)
您可以使用包含负前瞻的正则表达式:
/(.).*(?!\1)(.).*(?!\1)(?!\2)(.)/
示例:
> regex = /(.).*(?!\1)(.).*(?!\1)(?!\2)(.)/
> regex.exec('abab!aba')
["abab!ab", "a", "!", "b"]
> regex.exec('abababa')
null