在JavaScript中,我可以使用正则表达式替换tex:
var textSearch = "10";
var textReplace = "2";
var c = alayer.textItem.contents
c = c.replace(new RegExp(textSearch, "g"),textReplace);
alert(c);
“10”的文本字符串被替换为“2”。好哇!
但是,如果没有新的RegExp构造函数,我就无法进行全局替换。
c = c.replace(textSearch, textReplace); //2 10 10
我尝试了各种迭代的/ g和“g”无济于事。
使用变量时,是否必须以新的regExp()形式使用regxEx,或者我错过了一个技巧? Reginald X. Pression你在哪里?我需要你的帮助!
答案 0 :(得分:1)
实际上,通常您必须使用RegExp来替换多个实例。然而,有一个非标准的第三个标志" replace()
的参数,即使您使用普通字符串作为搜索表达式,也应实现全局替换:c = c.replace('needle', haystack, 'g');
请参阅MDN reference。请注意,例如,不支持此额外参数。 Chrome,所以RegExp方法是最好的。