ANTLR , , , ( " INTEGER ", ). . , -, , .
, lexer . :
, , ANTLR.
, keyValue: IDENTIFIER '=' INTEGER ';', '=' ';' .
42 INTEGER, IDENTIFIER, IDENTIFIER, : IDENTIFIER '=' IDENTIFIER ';', ' t keyValue. , lexer, , " INTEGER next".
, . :
IDENTIFIER [A-Za-z] [A-Za-z0-9]* ( ). , , , .INTEGER IDENTIFIER. , , , .- , :
INTEGER IDENTIFIER, INTEGER. id: IDENTIFIER | INTEGER;, IDENTIFIER , keyValue key=id '=' value=INTEGER ';'.
:
:
grammar LexerPriorityRulesExample;
randomParserRule: 'foo';
BAR: 'bar';
IDENTIFIER: [A-Za-z]+;
BAZ: 'baz';
WS: [ \t\r\n]+ -> skip;
:
aaa foo bar baz barz
:
IDENTIFIER 'foo' BAR IDENTIFIER IDENTIFIER EOF
aaa IDENTIFIER
IDENTIFIER , .
foo 'foo'
randomParserRule 'foo', IDENTIFIER.
BAR BAR
BAR, IDENTIFIER .
baz IDENTIFIER
baz, IDENTIFIER. , BAR.
, baz , IDENTIFIER , baz.
barz IDENTIFIER
BAR 3 (BAR), IDENTIFIER 4 . IDENTIFIER , BAR.
EOF ( ) - , .
, . , , .
, 'foo', , lexer. , . , , .