0
我想用ANTLR 4這樣一行解析:ANTLR 4:多PARAMS跳行空間
circle 'my circle' : posx = '800'; posy = '640';
我希望能夠解析它沒有考慮的空格,製表符和新行護理在裏面,比如:
circle'my circle':posx='800';posy='640';
或
circle
'my circle':
posx='800'; posy=
'640'
我此刻的語法是:
grammar Circle;
prog
: statement*
;
statement
: circle
;
circle
: INDENT? 'circle' '\'' VALUES '\'' ':' params
;
params
: param+
;
param
: ARG '=' '\'' VALUES '\'' ';'
;
INDENT : [ \t]+;
VALUES : ARG (ARG)* ;
ARG : [a-zA-Z0-9]+;
WS : [ \t\n\r]+ -> skip;
反正試圖解析這一點:
circle 'my circle' : posx='800'; posy = '640';
我:
line 1:5 mismatched input ' ' expecting '''
有關如何解決語法解析上面跳過空格,製表符,在返回行文本的任何想法線的中間?
是的,這是真的。事實上,我試圖得到一個類似python的縮進http://stackoverflow.com/questions/8642154/antlr-what-is-simpliest-way-to-realize-python-like-indent-depending-grammar但沒有成功目前來說。 – Randomize