首页 > 解决方案 > 确定匹配哪个令牌

问题描述

我有一个看起来像的规则

expr : expr op=( PLUS | MINUS ) expr
PLUS : '+'
MINUS : '-'

我怎么知道哪个运算符匹配?我试过做ExprContext.PLUS().getText(),但不知何故ExprContext.PLUS()返回null。

标签: antlrantlr4

解决方案


ANTLR4 会op为你生成一个成员,所以你可以做if (exprContext.op().getText() == "+") ....


推荐阅读