我正在尝试编写一个语法来解析格式
的输入--
sfasfa af adfa
sfsdfsadfa
--
这就是我想出来的,但它说的是mismatchedTokenException。
grammar abc;
key : MARK password MARK;
password: char+ ;
char: CHAR;
WS: (' '|'\r'|'\t'|'\u000C'|'\n') {channel=99;};
CHAR: ('a'..'z'|'A'..'Z'|'0'..'9'|'/'|'+'|'='|'_'|'-'|':')*;
MARK : '--';
我想要获取密码。
答案 0 :(得分:0)
有一些问题:
CHAR
规则可以匹配空字符串); channel
前面应加$
; 99
,而是HIDDEN
)。尝试:
grammar abc;
key : HEADER password END;
password : char+ ;
char : CHAR;
WS : (' '|'\r'|'\t'|'\u000C'|'\n') {$channel=HIDDEN;};
CHAR : ('a'..'z'|'A'..'Z'|'0'..'9'|'/'|'+'|'='|'_'|'-'|':');
HEADER : '--BEGIN--';
END : '--END--';