如何在flex中映射引号?
问题描述:
如何在flex中映射引号?如:如何在flex中映射引号?
""" {return ' " ';}
我试过上面的方法,它似乎并没有接受,作为一项规则。
我也曾尝试
"\"" {return ' " ';}
这也没有奏效。
答
"\"" {return ' " ';}
是不合法Ç。你需要返回'"'
,没有空格。这只是你匹配的单个字符。您也coud尝试:
["] return '"';
,其实我更喜欢省略所有单个特殊字符的规则,只是有
. return yytext[0];
在语法的底部。这样,你就没有成千上万的规则+
,-
等等,偶然的非法字符变成了解析错误,并且可以从错误中恢复。
使用原始字符串前缀(可选)R“分隔符(raw_characters)分隔符”。 http://en.cppreference.com/w/cpp/language/string_literal –
'“\”“'应该可以正常工作。你有[mcve]吗? – rici