另外,如果不用正则表达式,javascript中没有直接实现替换的函数吧

解决方案 »

  1.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var a ="a=\"aa\" b=\'sdf\'";var re = /\"|\'/galert(a.replace(re,function(){return "\\" + arguments[0];}));
    //-->
    </SCRIPT>
      

  2.   

    str.replace(/\"/g, "\\\"").replace(/\'/g, "\\'");
      

  3.   

    TO: lienzhu(李强) 
        你的正则严格来说是错的. 你的代码对 ' " | 这三种字符都进行替换, 你的原义可能是用 | 表示逻辑或, 但是你外面多套用了 []
        str.replace(/(\'|\")/g,"\\$1");  //正则是比较严谨的东西, 乱写不得!