找到以下每种语言? (语法)

时间:2014-09-15 21:34:37

标签: grammar context-free-grammar ambiguous-grammar

我希望,对于Τ= {a,b,c}上的以下每种语言,构造相应的正则表达式和常规语法:

  • 所有字符串恰好包含三个a。
  • 所有字符串最多包含三个b。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

除了给定的符号之外,你总是可以使用联合,连接和Kleene星(除非任务明确禁止它)。因此,如果您不知道这些是如何工作的,请先阅读这些内容。之后,这里有第一个任务的提示:接受包含三个或更多b个字符串的任何字符串,例如acbaacbbaacbacb。每个字符都是前三个b中的一个:xxbxxxbbxxxxxxxb。所以这样一个字符串的结构是任何字符的序列(如果它以b开头,则可能没有),然后是b,然后是更多其他字符(可能),然后是另一个{{ 1}},更多字符(可能),第三个b,最后更多字符(可能)。你如何表达&#34;任何角色&#34;,以及如何表达b&#39; s和&#34;任何角色的交替序列,零次或多次&#34;?< / p>