javascript全局替换

// replace(/原字符串/g,"新字符串") 可以替换,但是有特殊字符需要自己转义,变量无法使用(注意:这种原字符串是不用引号扩出来的,比如 /aaaa/g)
// str.replace(eval("/"+变量名+"/g"),"新字符串") //变量可以使用eval包裹,但是特殊字符无法处理
str.replace(new RegExp("原字符串", 'g'), "新字符串")////new RegExp可以处理各种格式,特殊符号会自动转换(比如字符串中有/*^等符号)
str.replace(new RegExp(变量名, 'g'), "新字符串")

比如:

var str="aaaaffffddddaaaa", oldStr="aaa",newStr="bbb";
str=str.replace(/aaa/g,newStr); //无法替换变量,特殊符号要自己转换
str=str.replace(eval("/"+oldStr+"/g"),newStr);//eval可以用变量,特殊符号要自己转换
str=str.replace(new RegExp(oldStr,'g'),newStr);//new RegExp可以处理各种格式,特殊符号会自动转换(比如字符串中有/*^等符号)
str=str.replace(new RegExp("aaa",'g'),newStr);
posted @ 2022-11-15 11:19  紫月java  阅读(64)  评论(0编辑  收藏  举报