BNF重复字符序列

时间:2012-11-07 19:01:09

标签: expression bnf repeat

我如何找到3个或更多“a”的序列,后跟相同数量的带有BNF表达式的“b”?

我知道

{<letter>} or {<letter> | <digit>}

用于发生零次或多次的重复项目,但我不知道如何获得“a”重复的次数以确保“b”重复相同的次数

1 个答案:

答案 0 :(得分:2)

这样的事情:

<valid-string> ::= "aaa" <ab> "bbb"
<ab>           ::= "a" <ab> "b" | ""

这将从三个a和三个b开始,以满足最低要求。然后它允许同时插入ab(保持数量相同),同时在字符串的中间重复自己。