str="aaaaaabcdasdasd";
str=str.replace(/abcd/g,"1234");
alert(str)

解决方案 »

  1.   

    String对象里面有个方法可以解决,但具体叫什么我忘了,这个功能很少用...
      

  2.   

    如果要替换的字符量比较小,性能要求不是很高的话,可能多替换几次,象上面那位仁兄那样做未毕不可,如
    str="aaaaaabcdasdasd";
    str=str.replace(/a/g,"1");str=str.replace(/b/g,"2");
    str=str.replace(/c/g,"3");
    alert(str)
    或者str="aaaaaabcdasdasd";  //要替换的字串
    var rOrigin="abcd";  //原始字符表
    var rTo="1234";      //目的字符表
    for(var i=0;i<rOrigin.length;i++){
      str=eval("str.replace(/"+rOrigin.substr(i,1)+"/g,'"+rTo.substr(i,1)+"')");
    }
    alert(str);
      

  3.   

    <script>
     function get1234(str){
       var ret="",nc;
       for(var i=0;i<str.length;i++){
          nc=str.charCodeAt(i);
      ret+=(nc>=97 && nc<=100)?String.fromCharCode(nc-48):str.charAt(i);
       }
       return ret;
     }
     alert(get1234("MMMaMMbcMMd"));
    </script>