您好我遇到了这个问题很多麻烦我遇到了很多网站,但发现这篇文章How to convert BNF to EBNF非常有用,但我不知道从这个例子开始。< / p>
<decimal_literal> --> (0|1|2|3|4|5|6|8|9){0|1|2|3|4|5|6|7|8|9|_}
在此规则中,括号和花括号是符号符号。它需要超过1个规则,可能需要引入1个或更多新的非终端。
这是我正在使用的教科书http://umsl.edu/~mfrp9/misc/cpl.pdf第131页显示了一个示例,但我无法将其应用于此问题。如果有人可以一步一步解释这个问题的解决方案,那么我可以学习它做类似的问题,非常感谢。
答案 0 :(得分:0)
这看起来似乎是从本书的第131页翻译给BNF的。
<decimal_literal> ⟶ <decimal_digit>
| <decimal_literal> <decimal_digit_or_underscore>
<decimal_digit> ⟶ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<decimal_digit_or_underscore> ⟶ <decimal_digit> | _