Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 寻找更优雅的正则表达式解决方案_Regex_Deterministic - Fatal编程技术网

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

Regex 寻找更优雅的正则表达式解决方案,regex,deterministic,Regex,Deterministic,我有一个关于正则表达式的问题(如果术语中有错误,我提前道歉,我的课程不是英语的): 我希望为包含偶数子字符串'ab'的所有字符串编写一个正则表达式,因为这些字母来自集合{a,b,c} 例如:ababcbcabbcabbcabcabbcabbaccbabccabc等 到目前为止,这是我想到的最简短的表达: (b+a*c+aa*bb*(a+cb*)*ab)*a* 然而,这似乎有点复杂,也许有人可以建议一个更短或更优雅的表达?谢谢。这没有必要更优雅,但它不依赖于c&任何字母都可以使用。但是,我会让你来

我有一个关于正则表达式的问题(如果术语中有错误,我提前道歉,我的课程不是英语的):

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

例如:
abab
cbcabbcabbcab
cabbcab
baccbabccabc

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


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

这没有必要更优雅,但它不依赖于
c
&任何字母都可以使用。但是,我会让你来决定,以下是我的解决方案:

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

这并不需要更优雅,但它不依赖于
c
&应该与任何字母一起使用。但是,我会让你来决定,以下是我的解决方案:

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

它必须是纯正则表达式还是你能得到“ab”的匹配数并检查该数是否为偶数?@AndrewMorton纯正则表达式它必须是纯正则表达式还是你能得到“ab”的匹配数并检查该数是否为偶数?@AndrewMorton纯正则表达式