字符串中字符串的 Antlr 语法
Antlr grammar for a string inside a string
"Choose ""A"“适用于所有区域。”是字符串,我的字符串语法规则是 STRING : '\"' .* '\"' ;它没有按照我想的那样进行,直到 "choose " 才停止。我可以写什么规则来接受上述输入。
像这样的东西就可以了:
STRING
: '"' ( ~["] | '""' )* '"'
;
请注意,上面的规则也接受字符串文字中的换行符。如果您不希望这样,请在否定集中包含 \r\n
:
STRING
: '"' ( ~["\r\n] | '""' )* '"'
;
"Choose ""A"“适用于所有区域。”是字符串,我的字符串语法规则是 STRING : '\"' .* '\"' ;它没有按照我想的那样进行,直到 "choose " 才停止。我可以写什么规则来接受上述输入。
像这样的东西就可以了:
STRING
: '"' ( ~["] | '""' )* '"'
;
请注意,上面的规则也接受字符串文字中的换行符。如果您不希望这样,请在否定集中包含 \r\n
:
STRING
: '"' ( ~["\r\n] | '""' )* '"'
;