如何在Antlr 3解析器中获取前一个标记?实际上我可以通过使用“input.LT(-1)”轻松获得它。但我不想使用lookahead.So是否有任何替代方法来获取解析器中的前一个标记?
答案 0 :(得分:1)
另一种方法是覆盖词法分析器中的emit(Token t)
和nextToken()
,并跟踪最后发出的令牌。有关如何使用此示例的示例,请查看此问答中的PyEsque
语法:ANTLR What is simpliest way to realize python like indent-depending grammar?
但我会使用input.LT(-1)
。