ANTLR 简单规则


本文向大家介绍ANTLR 简单规则,包括了ANTLR 简单规则的使用技巧和注意事项,需要的朋友参考一下

示例

Lexer规则定义令牌类型。它们的名称必须以大写字母开头,以区别于解析器规则。

INTEGER: [0-9]+;
IDENTIFIER: [a-zA-Z_] [a-zA-Z_0-9]*;

OPEN_PAREN: '(';
CLOSE_PAREN: ')';

基本语法:

语法 含义
A 匹配名称为lexer的规则或片段 A
A B 比赛A之后B
(A|B) 匹配A或B
'text' 匹配文字“文本”
A? 匹配A零或一次
A* 匹配A零次或多次
A+ 匹配A一次或多次
[A-Z0-9] 在定义的范围内匹配一个字符(在此示例中,在AZ或0-9之间)
'a'..'z' 字符范围的替代语法
~[A-Z] 取反范围-匹配不在该范围内的任何单个字符
. 匹配任何单个字符