var str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test"; var sTmp="rea,"; var sTMP=",get"; //现在想把str中符合两个变量的字符串全部替换成"" var v=str.replace(/rea,/g,"\"\""); v=v.replace(/,get/g,"\"\""); //var v=str.replace(/\,get|rea\,/g,"") ; //对连着的rea,get 后一个不能去掉 //var v=str.replace(/\,get|rea\,|get/g,"") ; //对连着的rea,get 回出现两个连着的逗号alert(str+"\n"+v);
怎么在正则表示引入变量呢?如: var v=str.replace(/sTmp/g,"\"\""); v=v.replace(/sTMP/g,"\"\"");
上面理解错你的意思了,修改一下,var str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test"; var sTmp="rea,"; //var sTMP=",get"; var sTMP="get,"; var v=str.replace(/get\,|rea\,/g,"") ; alert(str+"\n"+v);也可以修改为 var str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test"; var sTmp="rea,"; var sTMP=",get"; var v=str.replace(/get|rea/g,"") ; v=v.replace(/\,\,\,/g,",").replace(/\,\,/g,","); alert(str+"\n"+v);
var re=new RegExp(sTmp,"g"); str=str.replace(re,""); var re=new RegExp(sTMP,"g"); str=str.replace(re,"");这样最简单。散分
str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test" var sTmp="rea";var sTMP="get" var reg=new RegExp(",?"+sTmp+"[,$]",g); return str.replace(reg,",");
str.replace(sTmp,"").replace(sTMP,"")
楼主是不是还有什么其他玄机?
var sTmp="rea,";
var sTMP=",get";
//现在想把str中符合两个变量的字符串全部替换成""
var v=str.replace(/rea,/g,"\"\"");
v=v.replace(/,get/g,"\"\"");
//var v=str.replace(/\,get|rea\,/g,"") ; //对连着的rea,get 后一个不能去掉
//var v=str.replace(/\,get|rea\,|get/g,"") ; //对连着的rea,get 回出现两个连着的逗号alert(str+"\n"+v);
var v=str.replace(/sTmp/g,"\"\"");
v=v.replace(/sTMP/g,"\"\"");
var sTmp="rea,";
//var sTMP=",get";
var sTMP="get,";
var v=str.replace(/get\,|rea\,/g,"") ;
alert(str+"\n"+v);也可以修改为
var str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test";
var sTmp="rea,";
var sTMP=",get";
var v=str.replace(/get|rea/g,"") ;
v=v.replace(/\,\,\,/g,",").replace(/\,\,/g,",");
alert(str+"\n"+v);
var re=new RegExp(sTmp,"g");
str=str.replace(re,"");
var re=new RegExp(sTMP,"g");
str=str.replace(re,"");这样最简单。散分
var sTmp="rea";var sTMP="get"
var reg=new RegExp(",?"+sTmp+"[,$]",g);
return str.replace(reg,",");