好的。这可能是一个愚蠢的问题,但我被卡住了。
在我的javascript中,我有一个包含'
的字符串变量,它代表单引号,例如:some_text_'_some_text
。
现在,我想用实际的单引号替换它,如some_text_'_some_text
。
显然的方法是使用str.replace(/'/g,"'")
,但问题是我将这个javascript代码写入第三方软件时,该软件会在保存脚本时将'
替换为'
。因此,如果我再次打开脚本,它就会显示str.replace(/'/g,"'")
。因此,当脚本运行时,它不会正确地执行替换操作。
你可能会问我为什么需要这个替换?
原因是这个变量被传递给构建SQL查询,我不想在查询中出现'
,我希望它是'
,这样我可以在SQL中进行转义。
编辑
所以,我意识到这种行为的原因,潜在的答案者可能需要考虑这一点。我使用的软件将所有文件都存储为XML,包括我写的javascript代码。因此,在保存时将所有特殊字符转换为HTML代码,并在读取时解析它们。这就是'
被转换为'
的原因。
htmlspecialchars_decode
然后进行转义。 - dev7str.replace(/'/g,"'")
? - Bergistr.replace(new RegExp("&"+"#"+"x27;", "g"), "'")
这样的方式欺骗软件... 尝试将其识别为数字字符引用,你这个狡猾的第三方软件! - CBroe