我有一个这样的规则定义:
reference: volume':'first_page'-'last_page ;
volume: INTEGER;
first_page: INTEGER;
last_page: INTEGER;
INTEGER: [0-9]+;
FREE_TEXT_WORD: NON_SPACE+;
fragment NON_SPACE : ~[ \r\n\t];
给定输入“ 168:321-331 ”,我认为它会匹配参考规则。但实际上,整个字符串被标记为FREE_TEXT_WORD。
在这种情况下,如何使INTEGER令牌优先于FREE_TEXT_WORD?
谢谢。