相关疑难解决方法(0)

如何在ANTLR中管理可选空格?

我试图解析ANTLR中的数据文件 - 它具有可选的空格

 3 6
  97   12
 15 18
Run Code Online (Sandbox Code Playgroud)

以下显示了行的开始和结束位置.最后有一个换行符,没有标签.

^ 3 6$
^  97   12$
^ 15 18$
^
Run Code Online (Sandbox Code Playgroud)

我的语法是:

lines   :   line+;
line    :   ws1 {System.out.println("WSOPT :"+$ws1.text+":");} 
                num1 {System.out.println("NUM1 "+$num1.text);} 
                ws2 {System.out.println("WS :"+$ws2.text+":");}
                num2 {System.out.println("NUM2 "+$num2.text);} 
                NEWLINE
    ;
num1    :    INT    ;
num2    :    INT    ;
ws1 :   WSOPT;
ws2 :   WS;

INT     : '0'..'9'+;
NEWLINE :    '\r'? '\n';
//WS    :   (' '|'\t' )+ ;
WS  :   (' ')+ ;
WSOPT   :   (' ')* ;
Run Code Online (Sandbox Code Playgroud)

这使

line 1:0 …
Run Code Online (Sandbox Code Playgroud)

java whitespace antlr

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

antlr ×1

java ×1

whitespace ×1