自动机正则表达式{0 + 1} *

时间:2014-12-12 13:16:01

标签: regex automata

我是Automata概念的新成员。在一些论文中,我发现了{0,1}*

  1. (0+1)*

  2. 相同
  3. 我们也可以从(0+1)*

  4. 生成101
  5. 我们可以从{0,1}*生成101      如果1)答案是否

  6. 请任何人帮我解决这个困惑..

1 个答案:

答案 0 :(得分:3)

如果所有这些都出现在计算机科学论文和计算理论书籍中,那么是的,它们可能是相同的。

  • 在符号{0,1}*中,设置符号{0,1}用于表示“0或1”。

  • 或者,+也用于表示替换(例如JFLAP)。所以(0+1)也可以表示“0或1”。

  • |也用于表示理论计算机科学背景下的交替(0|1)。这也是许多正则表达式引擎中交替的语法。

Kleene星*在理论正则表达式(书籍,纸张)和实际正则表达式库中具有相同的符号,表示重复前一个原子的0次或更多次。

由于它们的意思是“(0或1)重复0次或更多次”,因此它们都可以生成语言101

正如@Bergi在评论中提到的那样,当您在同一本书/论文中看到这两种语法时,您应该退后一步。例如,@ paarandika指出+实际上可以在书/纸中表示“重复一次或多次”,如果它是上标。