0
我的antlr(我使用的是IntelliJ插件)匹配我的解析器规则中的第一个表达式的所有输入,这显然会导致错误。Antlr4(java)试图匹配所有输入到第一个令牌
简单的例子:
grammar test;
rule : WORD '+' WORD;
WORD : [a-z]+;
立即测试:
输入= 'faefae' 得到我:
线1:6不匹配输入 '' 期待 '+'
(到目前为止它是有道理的)
输入= 'faefae +':
线1:0不匹配的输入 'faefae +' 期待WORD。
输入= 'faefae + faefae':
线1:0不匹配的输入 'faefae + faefae' 期待WORD。
最后输入应该可以工作,为什么不呢?
非常感谢您的帮助, 祝您有个美好的一天!
这是奇怪的。第三个例子应该已经有了,第二个例子应该发出了不同的错误信息。请将您的代码添加到问题中。 –