如何使用以下语法从侦听器访问令牌MONTH_NAME
或DIGITS
:
date : DATE_BULK;
DATE_BULK : DIGITS SEPARATOR DIGITS SEPARATOR DIGITS
| DIGITS WHITE_SPACE MONTH_NAME WHITE_SPACE DIGITS ;
fragment MONTH_NAME : 'Jan' |
'Feb' |
;
在侦听器中,我可以这样做:
def exitDate(self, ctx):
dateBulk = ctx.DATE_BULK().getText()
但这给出了整个日期,然后我必须使用正则表达式或其他方法手动解析。
DATE_BULK
并使用规则直接定义date
。答案 0 :(得分:0)
我无法摆脱虚拟
DATE_BULK
并使用规则[...]来定义date
然后答案很简单:您不能。 DATE_BULK
是一个令牌,不能在解析器中分隔(当然,除了使用Python的substring函数外)。