And*_*rey 9 string antlr char match
我有以下片段的定义:
fragment CHAR :'a'..'z'|'A'..'Z'|'\n'|'\t'|'\\'|EOF;
Run Code Online (Sandbox Code Playgroud)
现在我必须为字符串定义词法分析器规则.我做了以下事情:
STRING : '"'(CHAR)*'"'
Run Code Online (Sandbox Code Playgroud)
但是在字符串中我希望匹配除新行'\n'以外的所有字符.有什么想法我能做到吗?
Bar*_*ers 11
"
除了换行符之外,您还需要排除.试试这个:
STRING : '"' ~('\r' | '\n' | '"')* '"' ;
Run Code Online (Sandbox Code Playgroud)
该~
则无效CHAR-套.
我想要否定我的CHAR集中的新行
除了这个AFAIK,别无他法:
STRING : '"' CHAR_NO_NL* '"' ;
fragment CHAR_NO_NL : 'a'..'z'|'A'..'Z'|'\t'|'\\'|EOF;
Run Code Online (Sandbox Code Playgroud)