问题很简单,请设计一个函数,功能如下:lcdtid="005,[all],kevin"要得到:
lcdtid="005,kevin"
lcdtid2="[all]"
谢谢!

解决方案 »

  1.   

    var aaa = "005,[all],kevin";
    var arr = aaa.split(",");
    var s1 = arr[0] + "," + arr[2];
    var s2 = arr[1];
    alert(s1);
    alert(s2);
      

  2.   

    var lcdtid = "005,[all],kevin";
    var lcdtids = lcdtid.split(',');
    lcdtid = new Array();
    var lcdtid2 = new Array();
    var pattern = /^[.*]$/;
    for(var i = 0; i < lcdtids.length; i ++) {
      if(lcdtids[i].match(pattern)) {
        lcdtid2[lcdtid2.length] = lcdtids[i];
      } else {
        lcdtid[lcdtid.length] = lcdtids[i];
      } 
    }
    lcdtid = lcdtid.join(',');
    lcdtid2 = lcdtid2.join(',')
      

  3.   

    哦,忘了说了一个重点,那就是,我要分离出来的是所有方括号的内容,包含方括号!
    如:lcdtid="005,[all],kevin,[today],lenovo,china"
    要分离出:
    lcdtid="005,kevin,lenovo,china"
    lcdtid2="[all],[today]"
      

  4.   


    var lcdtid="005,[all],kevin"var l2="";
    var l1=lcdtid.replace(/(\[\w+\]),/,function($,$1){
        l2=$1;
        return "";
    });
    alert(l1);
    alert(l2);
      

  5.   

    var lcdtid="5,[all],kevin,[today],lenovo,china"var l2=[];
    var l1=lcdtid.replace(/(\[\w+\]),/g,function($,$1){
        l2.push($1);
        return "";
    });
    alert(l1);
    alert(l2.join(","));
      

  6.   

    var lcdtid="005,[all],kevin,[a],c,b"var l2="";
    var l1=lcdtid.replace(/(\[\w+\]),/g,function($,$1){
        l2+=","+$1;
        return "";
    });
    if(l2.length>0){
        l2=l2.substring(1);
    }
    alert(l1);
    alert(l2);
      

  7.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <script type="text/javascript">
      var lcdtid="005,[all],kevin,[today],lenovo,china" 
      var a=new Array();
      var b=new Array();
      var reg=/^\[.*\]$/;
      
      var s=lcdtid.split(",");
      for(var i=0;i<s.length;i++){
    if(reg.test(s[i])){
    b.push(s[i]);
    }
    else{
    a.push(s[i]);
    }
      }  alert(a.toString());
      alert(b.toString());
      </script>
     </HEAD> <BODY>
      
     </BODY>
    </HTML>
      

  8.   

    哎,这样又要判断是否是“,”结束var lcdtid="5,[all],kevin,[today],lenovo,china,[to]"var l2=[];
    var l1=lcdtid.replace(/(\[\w+\]),?/g,function($,$1){
        l2.push($1);
        return "";
    });
    alert(l1);
    alert(l2.join(","));
      

  9.   

    ok,不用判断了var lcdtid="5,[all],kevin,[today],lenovo,china,[to]"var l2=[];
    var l1=lcdtid.replace(/(\[\w+\]),|,(\[\w+\])/g,function($,$1,$2){
        l2.push($1 ||$2);
        return "";
    });
    alert(l1);
    alert(l2.join(","));
      

  10.   

    非常感谢 sohighthesky 测试了一下,没发现什么问题!但不明白,你最后两次给出的算法有什么区别?