寻找更优雅的正则表达式解决方案

时间:2017-03-31 16:05:24

标签: regex deterministic

我对正则表达式有疑问(如果术语有错误,我事先道歉,我的课程不是英语):

我希望为包含偶数个子串'ab'的所有字符串写一个正则表达式,因为这些字母来自集合{a,b,c}

例如:abab cbcabbcababcab cabcab baccbccabccabc等。

到目前为止,这是我提出的最短的表达方式: (b+a*c+aa*bb*(a+cb*)*ab)*a*

然而,这似乎有点复杂,也许有人可能会建议更短或更优雅的表达?谢谢。

1 个答案:

答案 0 :(得分:0)

这不是更优雅,但它并不依赖c&应该用任何字母。但是,我会把这个决定留给你,这是我的解决方案:

^((?!ab).)*(ab((?!ab).)*ab((?!ab).)*)*$

Here's an example on regexr!