antlr - 确定匹配哪个令牌
问题描述
我有一个看起来像的规则
expr : expr op=( PLUS | MINUS ) expr
PLUS : '+'
MINUS : '-'
我怎么知道哪个运算符匹配?我试过做ExprContext.PLUS().getText()
,但不知何故ExprContext.PLUS()
返回null。
解决方案
ANTLR4 会op
为你生成一个成员,所以你可以做if (exprContext.op().getText() == "+") ...
.
推荐阅读
- discord.js - for循环上的awaitMessage
- python - 如何在 NetworkX 中为节点的数据部分获取多行
- python - python中的快乐数字问题。如何避免无限循环?
- javascript - 在返回之前设置状态总是失败,因为它没有完成反应
- redis - Redis 无法以未更改的配置启动?
- json - 无法将 JSON 数据解析为 listview(_TypeError (type '_InternalLinkedHashMap
' 不是类型 'FutureOr 的子类型 - >')
- recursion - Lisp递归函数检查列表中的值不起作用
- sql-server - Xpath 错误地转换 Char(13)
- python - 为什么 scipy.optimize.minimize 找不到最小值?
- android - 将函数传递给 dialogFragment