| Refresh | Home EGTry.com

match any character - dot


lexer grammar

lexer grammar L1;

Idws: ID  WS;
ID: 'a' .. 'z'+;
WS: (' '|'\n'|'\r'|'\t')+;
Any: .;





text input

 a ab 123456 abc abcd abcde zz 


token output

0: (5,# #)
1: (6,#a #)
2: (6,#ab #)
3: (7,#1#)
4: (7,#2#)
5: (7,#3#)
6: (7,#4#)
7: (7,#5#)
8: (7,#6#)
9: (5,# #)
10: (6,#abc #)
11: (6,#abcd #)
12: (6,#abcde #)
13: (6,#zz #)


use the lexer

import org.antlr.runtime.ANTLRStringStream;
import org.antlr.runtime.CommonTokenStream;
import org.antlr.runtime.Token;



public class L1Main {
    public static void main(String[] args) throws Exception {
    	ANTLRStringStream input=new ANTLRStringStream(" a ab 123456 abc abcd abcde zz ");
    	L1 lexer = new L1(input);
    	int i=0;
    	Token token;   	
    	while(  (token=lexer.nextToken()).getType() !=Token.EOF) {
    		
    		System.out.println(i+++": ("+token.getType()+",#"+token.getText()+"#)");
    	}
        
    }
}