例如有一串字符串:str="rea,ter,get,opt,rea,rea,get,opt,ppp,rea,test"
有两个变量:var sTmp="rea,";var sTMP=",get"现在想把str中符合两个变量的字符串全部替换成"",正则表达式如何写?

解决方案 »

  1.   

    不明白 
    str.replace(sTmp,"").replace(sTMP,"")
    楼主是不是还有什么其他玄机?
      

  2.   

    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);
      

  3.   

    怎么在正则表示引入变量呢?如:
    var v=str.replace(/sTmp/g,"\"\"");  
    v=v.replace(/sTMP/g,"\"\"");  
      

  4.   

    上面理解错你的意思了,修改一下,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);
      

  5.   


    var re=new RegExp(sTmp,"g"); 
    str=str.replace(re,"");
    var re=new RegExp(sTMP,"g"); 
    str=str.replace(re,"");这样最简单。散分
      

  6.   

    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,",");