ANTLR:对空白敏感的解析器规则

时间:2015-04-06 14:02:44

标签: parsing antlr grammar antlr3

我有以下输入数据:

Valid string: "123A"
Invalid string: "123 A"

Valid string: "111A <= 5 AND 222A"
Invalid string: "111 A <= 5 AND 222A"

下面你可以看到我正在使用的语法(antlr 3.4)。

my_id:  INT ('A'|'a') -> INT;
fragment DIGIT: '0' .. '9';
INT :   DIGIT+ ;
WS  :   (' '|'\t'|'\n'|'\r')+ {$channel=HIDDEN;} ;

问题是my_id123 A123A都匹配。检测123 A时如何抛出解析错误?

任何帮助都很高兴。

0 个答案:

没有答案