字符串1=“,1,2,3,4,6,4,0,” 字符串2=“,2,4,0”  如何去除去除字符串1里面的“2,4,0”,凡是带包括2,4,0都去掉,并去掉后面的逗号??如题

解决方案 »

  1.   

    这个意思?
    var s1 = ",1,2,3,4,6,4,0,";
    var s2 = ",2,4,0";var chars = s2.split(",");
    for (var i = 0; i < chars.length; i++) {
    if (!chars[i]) continue;
    var re = new RegExp(",?" + chars[i] + ",?", "ig");
    s1 = s1.replace(re, ",");
    }
    alert(s1.replace(/^,|,$|,,/g, ""));
      

  2.   


    var str1 = ",1,2,3,4,6,4,0,";
    var str2 = ",2,4,0";var reg = new RegExp(str2.replace(/^,|,$/g, "").split(",").join("|"), "g");
    str1 = str1.replace(reg, "").replace(/,+/g, ",");alert(str1);
      

  3.   

    晕, 伴水老大就不要来抢分了吧...忘了去掉后面的,var str1 = ",1,2,3,4,6,4,0,";
    var str2 = ",2,4,0";var reg = new RegExp(str2.replace(/^,|,$/g, "").split(",").join("|"), "g");
    str1 = str1.replace(reg, "").replace(/,+/g, ",").replace(/,+$/, "");alert(str1);
      

  4.   

    var firstArr1 = ",1,12,3,114,6,4,0,";
    var removeArr1 = ",2,14,0";换成这个你们的结果就出现错误了。
    我在网上刚找到了一个,之后改下
    function regroupArray(remove_Arr,first_Arr)
    {
    firstArr = first_Arr.split(",");
    removeArr = remove_Arr.split(",");
    for(var i in removeArr)
    {
       for(var j in firstArr)
       {
        if(removeArr[i] == firstArr[j])
        {
         firstArr.splice(j,1);//删除第j项
        }
       }
    }
    return firstArr;
    }这个没问题
      

  5.   

    var s1 = ",1,12,3,114,6,4,0";
    var s2 = "14,1,3";var chars = s2.split(",");
    for (var i = 0; i < chars.length; i++) {
    if (!chars[i]) continue;
    var re = new RegExp("^|," + chars[i] + ",|$", "ig");
    s1 = s1.replace(re, ",");
    }
    alert(s1.replace(/^,+|,+$/g, ""));
      

  6.   

    我那个也有错误,但是楼上您的还是有问题,刚发现的。
    var s1 = "2,2,6,2,5";
    var s2 = "2,";
    结果应该为6,5
      

  7.   

    var s1 = "2,2,6,2,5";
    var s2 = "2";var chars = s2.split(",");
    for (var i = 0; i < chars.length; i++) {
        if (!chars[i]) continue;
        var re = new RegExp(",?\\b" + chars[i] + "\\b", "gi");
        s1 = s1.replace(re, ",");
    }
    alert(s1.replace(/^,+|,+$/g, "").replace(/,{2,}/g, ","));
      

  8.   

    把7楼的改了一下,
    <script>
    var firstArr1 ="2,2,6,2,5"; 
    var removeArr1 ="2,";  
    var i=0;
    firstArr = firstArr1.split(","); 
    removeArr = removeArr1.split(","); 
    while( i <removeArr.length) 

      var j=0;
      while(j< firstArr.length)
      {     
        if(removeArr[i] == firstArr[j]) 
        {
          firstArr.splice(j,1);//删除第j项
           j--;    //退位
         }
        j++;
      }
      i++;

    alert(firstArr)
    </script>
      

  9.   

    或者这样,遍历大数组 - -!
    <script type="text/javascript">
    var a = ',1,12,3,114,6,4,0,';
    var b = ',2,14,0';a = a.split(',')
    b = ','+b+',';for(var i=0;i<a.length;i++){
      if(b.indexOf(','+a[i]+',')!=-1){a.splice(i,1);i--;}
    }alert(a);
    </script>
      

  10.   


    var s1 = ",2,2,6,2,3,4,5,5,";
    var s2 = ",2,2,4,,1,,";您的还是不行s1,s2都有可能是有重复的
      

  11.   


    function fun1()
    {
    var str1=",1,2,3,4,6,4,0,";
    var str2=",2,4,0";
    var regex1 = new RegExp('['+str2.replace(/,/g,'')+']','g');
    return str1.replace(regex1,'').replace(/,{2,}/g,',');
    }
      

  12.   

            var str1=",1,,1,2,3,4,6,4,0,";
            var str2=",2,4,,3,2,4,0";    
    还是不可以噢!
      

  13.   

    var s1=",1,,1,2,3,4,6,4,0,"; 
    var s2=",2,4,,3,2,4,0";   var chars = s2.split(",");
    for (var i = 0; i < chars.length; i++) {
        var re = new RegExp(",?" + chars[i] + ",?", "ig");
        s1 = s1.replace(re, ",");
    }
    alert(s1.replace(/[,]+/g, ","))汗啊
    这么多人我来凑热闹
    我改清洁工的
      

  14.   

            var str1=",1,,1,2,3,4,6,4,0,";
            var str2=",2,4,,3,2,4,0";    
    请问 你提供的例子 要得到的字符串是什么?
    不是 ,1,1,6 ?
      

  15.   

    var s1 = ',1,2,3,4,6,4,0,';
    var s2 = ',2,4,0';

    var r1 =  new RegExp( '['+ s2.replace(/,/g ,'|') + ']','g' );
    var s3 = s1.replace( r1 , ',').replace(/,+/g,',').replace(/(\S+),/g,'$1');
    alert( s3 );
      

  16.   

    var s1 = ',1,2,3,4,6,4,0,';
    var s2 = ',2,4,0';
    var r1 =  new RegExp( '['+ s2.replace(/,/g ,'|') + '],','g' );
    var s3 = s1.replace( r1 , '').replace(/(\S+),/g,'$1');
    alert( s3 );
      

  17.   

    function filter(a, b) {
    a = (a.match(/\d+/g)||[""]).join(",");
    b = (b.match(/\d+/g)||["X"]).join("|");
    a = a.replace(new RegExp("\\b("+b+")\\b", "g"), "");
    return (a.match(/\d+/g)||[""]).join(",");
    }var str1 = ",,1,,2,3,,4,6,4,0,";
    var str2 = ",2,4,,,,,,0,";alert(filter(str1, str2));