簡單的規則

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) 匹配 AB
'text' 匹配文字 text
A? 匹配 A 零或一次
A* 匹配 A 零次或多次
A+ 匹配 A 一次或多次
[A-Z0-9] 匹配定義範圍內的一個字元(在此示例中為 AZ 或 0-9)
'a'..'z' 字元範圍的替代語法
~[A-Z] 範圍的否定 - 匹配不在範圍內的任何單個字元
. 匹配任何單個字元