寻找给定语言的正则表达式

时间:2013-10-28 16:34:28

标签: regex regular-language

我需要找到一个L的正则表达式,包含所有字符串,最多两次出现字母{00}上的字符串E = {0,1}.

例如,L中的0000000没有。

我试图找到它,但我找不到它。你有什么想法吗?

提前致谢。

2 个答案:

答案 0 :(得分:1)

以下内容应该有效(e为空字符串):

(1|01)* (e|0|00|000|001(1|01)*00) (1|10)*

每当你必须解决正则表达式的问题并且条件说“最多......等等等等”时,你通常只需列出所有可能性。

答案 1 :(得分:-1)

它是00.*00

的倒数
echo "000" | grep -v "00.*00"