繁体   English   中英

DFA的正则表达式,该表达式接受空字符串以及其他字符串

[英]Regular expression for a DFA that accepts the empty string as well as other strings

对于以下DFA NFA

在此处输入图片说明

我制作了RE

(a + b)(ab)*

但是,然后我意识到我的RE不接受空字符串,因为它只接受以ab开头的字符串,但是DFA NFA也接受空字符串,因为初始状态是接受状态。

DFA NFA的有效RE是什么? 我会想一些类似的

Ø + (a + b)(ab).*

但我怀疑这种语法是否被接受。

编辑

我也刚刚意识到,我所举的例子是NFA,但这不是问题的重点。

(a + b)*将是您在问题标题中提到的答案。 带*表示您可以有空字符串。 a + b表示您可以选择a或b。 所以最后您可以重复选择a或b。

下面的表达式如何?

^(|[ab](ab)*)$

它接受一个空字符串,或者一个无序或多次ab的序列,后跟ab

但是,这能否解决您的问题取决于确切的正则表达式方言。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM