1

假设我在 BNF 中有这个:

a ::= b {c}
    | d {e}

有什么办法可以翻译成 Gold-Parser 吗?没有像这样分解它:

<a> ::= <b> <c>

<c> ::= 
    | <c> terminal

旁注:如果有人有更好的标题/更多标签,请编辑它,谢谢!

4

1 回答 1

1

有什么办法可以翻译成 Gold-Parser 吗?不打破它

不,它不支持重复运算符 ({x} ) 作为规则定义的一部分,因此您必须使用多个规则对其进行编码。

另请参阅将 EBNF 转换为 BNF

于 2015-04-26T21:26:43.503 回答