为什么antlr4会阻塞LT!*

时间:2014-03-07 14:36:49

标签: javascript regex antlr

我正在尝试使用带有antlr4的JavaScript语法(Chris Lambrou的版权所有2008,从http://www.antlr3.org/grammar/1206736738015/JavaScript.g检索)。该脚本包含许多“LT!*”实例,我将其理解为正则表达式,表示零或多行终止符,并且不包括生成的AST中的标记(从回答到stackoverflow问题ANTLR 3, what does LT!* mean?)。 / p>

antlr4为“LT!*”的每个实例抛出语法错误,因此我假设最新版本不处理该构造。什么可以用来取代在antlr4中有效的“LT!*”?

[edit]注意语法错误在“!”上

1 个答案:

答案 0 :(得分:1)

ANTLR 4不会产生AST。因此,不允许使用!(和->)内部解析器规则。

请参阅:How can I build an AST using ANTLR4?