我正在编写一个从文件中读取代码的标记生成器,并且很难处理 - 看似简单的任务 - 将其分支到处理字符串常量的情况(任何以双引号开头和结尾的标记)
我为分支写的条件是
if (token.charAt(0) == '"') { // Do some stuff }
其中token
是读入的字符串。
或者,我也试过
if (token.startsWith("\"")) { // Do some stuff }
我已经检查了调试器,即使对于有效案例,例如字符串"Paris"
,其值为[”, P, a, r, i, s, ”]
任何建议都将不胜感激。
答案 0 :(得分:3)
左”
和右“
双引号与标准双引号字符"
不同。尝试对字符串执行replace()
,以便在标记化之前用标准双引号替换所有左右双引号。