正则表达式(JS) - 匹配任何5个字符的组合,但忽略5个字符的重复

时间:2015-07-23 05:01:51

标签: javascript regex

我在使用正则表达式时很困难,而且我一直在努力创建一个可以匹配XO的任意5个字符组合的表达式,但如果它重复X则忽略它或O完全5次。

这就是我提出的:

X{1,4}|O{1,4}
X|O{1,4}

那些表达式匹配(我希望它忽略XXXXX和OOOOO): enter image description here

我也尝试过使用非捕获组(?:),但效果不佳。

2 个答案:

答案 0 :(得分:5)

^(?!(.)\1+$)[XO]{5}$

试试这个。看看演示。

https://regex101.com/r/uK9cD8/1

答案 1 :(得分:2)

您可以尝试以下基于断言的正则表达式。

^(?!(?:X{5}|O{5})$)(?=.*X)(?=.*O)[XO]{5}$