Я использую ANTLR4 и грамматику CSS от https://github.com/antlr/grammars-v4/tree/master/css3. В основном это работает, но у меня возникают проблемы, когда я использую строки в кавычках в CSS. Например, со следующими CSS
.b1
{
font-family: "Gill Sans", serif;
}
я хотел бы извлечь «Gill Sans» и «serif», оба без кавычек. Когда кавычки используются вокруг строки, парсер генерирует KnownTermContext
, который затем имеет метод String()
, который возвращает antlr4::tree::TerminalNode*
. Метод getText()
этого возвращаемого объекта возвращает строку, включая кавычки. Кажется, что String()
допустимо только в том случае, если строка заключена в кавычки, поэтому теоретически я мог бы вручную удалить кавычки в этом случае, но, похоже, это не нужно, если используется синтаксический анализатор, такой как ANTLR.
Есть ли способ извлечь строку с удаленными кавычками или в этом случае вызывающий может удалить кавычки?