我的antrl4解析器中的一个规则如下。顶点表示为coorindates列表,每个坐标用空格分隔。
vertex returns[Vertex value]
:{$value = new Vertex();} e1=coordinate{$value.addCoordinate($e1.value);}+
(SPACEDELIMIT e2=coordinate{$value.addCoordinate($e2.value);})* LINEBREAK
;
LINEBREAK: NEWLINE+;
SPACEDELIMIT: ' ';
fragment NEWLINE:('\n'|'\r');
fragment WHITESPACE: (' ' | '\t' | '\r' | '\u000C')+ { skip(); } ;
我想检测其间的空格作为分隔符,以及换行符,但是想要忽略或跳过空格或' \ n'或者' \ t'其他地方的人物。我该如何实现它。我是antlr4的初学者,我不知道为什么我在kexer中使用fragment关键字。这只是一种让事情有效的绝望尝试。