单引号字符和双引号字符串
Single-quoted chars and double-quoted strings
我正在研究使用 ANTLR4 的解析器和词法分析器。我想保留字符(单字符)单引号和字符串(多于一个字符)双引号,但我是正则表达式的新手,我不能这样做,所以我想要一些例子,我也有一些问题在 ANTLR4 中我的正则表达式语句中的引号。
例如,对于字符串和字符,它应该只接受以下内容:
mychar = 'a'; // Chars single-quoted and single-char'd.
mystring = "test"; // Strings with MORE THAN ONE CHARS and double-quoted.
对于单引号字符,类似这样的内容:
CHAR
: '\'' ( '\' ~[\r\n] | ~[\'\r\n] ) '\''
;
其中 '\' ~[\r\n]
匹配转义字符(但不匹配转义换行符),~[\'\r\n]
匹配 \
、'
和换行符以外的字符字符
还有一个非常相似的双引号规则:
STRING
: '"' ( '\' ~[\r\n] | ~[\"\r\n] )* '"'
;
我正在研究使用 ANTLR4 的解析器和词法分析器。我想保留字符(单字符)单引号和字符串(多于一个字符)双引号,但我是正则表达式的新手,我不能这样做,所以我想要一些例子,我也有一些问题在 ANTLR4 中我的正则表达式语句中的引号。
例如,对于字符串和字符,它应该只接受以下内容:
mychar = 'a'; // Chars single-quoted and single-char'd.
mystring = "test"; // Strings with MORE THAN ONE CHARS and double-quoted.
对于单引号字符,类似这样的内容:
CHAR
: '\'' ( '\' ~[\r\n] | ~[\'\r\n] ) '\''
;
其中 '\' ~[\r\n]
匹配转义字符(但不匹配转义换行符),~[\'\r\n]
匹配 \
、'
和换行符以外的字符字符
还有一个非常相似的双引号规则:
STRING
: '"' ( '\' ~[\r\n] | ~[\"\r\n] )* '"'
;