Javascript单引号替换被忽略

Javascript single quote replace is being ignored

本文关键字:替换 单引号 Javascript      更新时间:2023-09-26

我正在写一个Photoshop Javascript脚本文件。出于各种目的,这个脚本在运行时多次复制一个特定的文本层。如果原始文本层包含撇号,则复制的实例将用正方形块替换撇号。所以"It's"变成了"It[]s"(显然不是括号,而是方框)

代码如下:

titleLayer = al.textItem.contents;
newTitleLayer = titleLayer.replace("'", "''");
alert(newTitleLayer); // At this point, this works:  "It's"
persistentSetting.putData(0,newTitleLayer);
app.putCustomOptions("text_contents4",persistentSetting,true);
alert(persistentSetting.getData(0)); // At this point, it does not.  It shows the square. "It[]s"

我知道这是一个简单的问题,我只是从来没有遇到过这个问题。

谢谢。

我猜你想

newTitleLayer = titleLayer.replace(/'/g, "'''");
//                                 ^^^^   ^
//    regex to match *all* apostrohpes     escape the backslash

最后我成功了:

persistentSetting.getData(0)。替换("新兴市场"、"’");//它实际上不是EM,但这是JS在我的编辑器中显示的小代码,当我复制并粘贴了特殊的block[]字符在。

谢谢你的帮助