ANTLRv4 - 如何识别字符串中未加引号的引号

ANTLRv4 - How to identify unquoted quote within string

如何识别字符串 "Aren't you a string?" 而不会在撇号处出现标记识别错误?

这是我的词法分析器的相关语法:

STRING_LITERAL : '"' STRING? '"';
fragment STRING : STRING_CHARACTER+;  
fragment STRING_CHARACTER :  ~["'\] | ESCSEQ;
fragment ESCSEQ : '\' [tnfr"'\];

~["'\] 中删除单引号:

STRING_LITERAL : '"' STRING? '"';
fragment STRING : STRING_CHARACTER+;  
fragment STRING_CHARACTER :  ~["\] | ESCSEQ;
fragment ESCSEQ : '\' [tnfr"'\];