0
我想弄清楚如何检查文字字符串中的分隔报价。任何帮助表示赞赏。Flex扫描器检查分隔报价
这是我到目前为止在我的开始条件。
<stringLiteral>INITIAL {value = ""; beginLine = lineNum; beginCol = colNum; }
<stringLiteral>\\n {cout<<"\n"; newline();}
<stringLiteral>\" {yylval.sval = new string(value); return STRING;}
<stringLiteral>\\. {error(linenum, colnum, string(YYText()) + " illegal token");}
“规则”没有什么明显的错误,它是什么对你不起作用? – rici 2014-09-18 20:39:08
如果文字字符串没有结尾引号,比如说:“这是一个字符串。 – pdf2e 2014-09-18 22:53:16
不幸的是,缺少的字符是不可见的,因为它们只存在于想象中。 (“可能是一个抽象/ 保持永恒的可能性/只在一个猜测的世界。”-TS艾略特)。因此,扫描将继续到下一个字符串(如果有的话)或文件结尾的开头。或者,如果您不允许以字符串文字结束行结束。恢复和继续解析是很困难的,但如果你禁止换行,就有可能继续下一行,希望你不会错过太多。 – rici 2014-09-19 05:18:18