2016-04-30 47 views
1

“为所有区域选择”“A”“。是字符串,我的字符串的语法规则是STRING:'\''。*'\“';它不会以我想象中的方式进行,直到“选择”才停止。我可以写什么规则来接受上述输入。用于字符串内部字符串的Antlr语法

回答

1

像这样的事情会做的伎俩:

STRING 
: '"' (~["] | '""')* '"' 
; 

注意,上面的规则也将接受内部的字符串字面换行符。如果你不想要的话,包括\r\n中的否定集合:

STRING 
: '"' (~["\r\n] | '""')* '"' 
;