正则表达式形成具有4个或5个b的单词

时间:2017-08-26 12:37:24

标签: regular-language

在形式语言理论中(与Kleene Star合作)如果我想创建一个regualr表达式来定义包含Set {a,b}上所有单词的语言,恰好是4个或5个b。

(注意我使用的书+用于OR,*用于0或许多)

到目前为止,我有:

[a(b *)aaa + aa(b *)aa + aaa(b *)a + aaaa(b *)+ abababab + babababa +(b *)aaaa]

+

[b(a *)bbbb + bb(a *)bbb + bbb(a *)bb + bbbb(a *)b + bbbbb(a *)+(a *)bbbbb + bababababa + ababababab]

有缩短的方法吗?似乎理论上不允许使用min和max作为字母。

1 个答案:

答案 0 :(得分:3)

您的表达并不适合所有可能性(例如babababababbbb)。搜索到的表达式应该更容易:

[ b*ab*ab*ab*ab* + a*ba*ba*ba*ba*ba* ]