在ISO 14977 EBNF标准第4.7节中,描述了例外的合法内容。我非常肯定异常可能包含任何有效的句法因素,只要它不包含任何元标识符。这意味着可以使用特殊序列作为这样的例外
syntax =
my rule - ? Something clever ? ;
是这样的吗?
您可以通过ISO here免费获得该标准。
答案 0 :(得分:1)
不,这不正确。您可以在异常中使用元标识符,只要完全评估它们就会产生终端。 4.7节中给出的示例显示了根据自身定义的元标识符,它永远不能完全解析为终端。这就是他们说:
...同样可以用不包含元标识符的句法因子来表示。
标准本身有很多例子 - 结帐部分8.例如:
gap free symbol =终端字符 - (第一个引号|第二个引号)