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