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]取反范围-匹配不在该范围内的任何单个字符
.匹配任何单个字符