正则表达式匹配不带重复字符的字符串

时间:2015-08-08 19:38:58

标签: regex

我正在寻找一个简单的正则表达式来匹配没有重复字符的字符串。 例如:

  • JHMCU26809C211501 - 好
  • JHMGD18508S219366 - 好
  • JHMCU268091111111 - 糟糕
  • 12345678901234567 - 好
  • ASD1111111ASD2313 - 错误
  • ASDIIIIIIIASDASD2 - 不好
  • IIIIIIIADS1EE2345 - 不好

2 个答案:

答案 0 :(得分:3)

你可以通过否定的先行来做否定。

^(?!.*(\w)\1{3,}).+$

DEMO

答案 1 :(得分:0)

如果它连续重复3次或更多次,这是最快的 这样做的方式。 (没有提供虚假演示

^(?:(.)(?!\1{2}))+$

 ^ 
 (?:
      ( . )                         # (1)
      (?! \1{2} )
 )+
 $