如何在ANTLR4中编写规则:“一些字符但除外”?
How to write the rule: “some characters but except” in ANTLR4?
ID: (['_'a-zA-Z])(['_'a-zA-Z0-9])*;
INT_LIT: 'INT';
FLOAT: 'FLOAT';
我要的是ID不能是'INT'或者'FLOAT'
我应该怎么办 ??谢谢
(抱歉我的英语不好)
只需将 INT_LIT
和 FLOAT
规则移动到高于 ID
的位置。当两个规则匹配相同的文本时,第一个规则获胜。 IE。使用此设置,"INT" 将始终是 INT_LIT
而不是 ID
。
ID: (['_'a-zA-Z])(['_'a-zA-Z0-9])*;
INT_LIT: 'INT';
FLOAT: 'FLOAT';
我要的是ID不能是'INT'或者'FLOAT'
我应该怎么办 ??谢谢
(抱歉我的英语不好)
只需将 INT_LIT
和 FLOAT
规则移动到高于 ID
的位置。当两个规则匹配相同的文本时,第一个规则获胜。 IE。使用此设置,"INT" 将始终是 INT_LIT
而不是 ID
。