var patn=/\^{(\w)*\}$/g
去试下

解决方案 »

  1.   


    <script>
    var str = "{name=name_1&vo=vo_1&value=vo_1}{name=name_2&vo=vo_2&value=vo_2}{name=name_3&vo=vo_3&value=vo_3}{name=name_4&vo=vo_4&value=vo_4}"; 
    var lines = str.match( /\{(.*?)\}/ig); 
    for(var i=0;i<lines.length;i++)
    {
      alert(lines[i]);
    }
    </script>
      

  2.   

    patn.exec(str)
    这个是返回数组的
      

  3.   

    <script type="text/javascript">     
    var str = "{name=name_1&vo=vo_1&value=vo_1}{name=name_2&vo=vo_2&value=vo_2}{name=name_3&vo=vo_3&value=vo_3}{name=name_4&vo=vo_4&value=vo_4}"; 
    var patn = /\{(.*?)\}/ig;  
    var lines = str.match(patn); 
    for(var i=0;i<lines.length;i++)
    {
    if(i==0){
     a=lines[i];
     }
     else{a=a+','+lines[i]}
    }
    document.write(a)
    </script> 
    这样自己重新组合成一个数组
    patn.exec(str)这个虽然返回的是一个数组,但你写的正则他返回了{name=name_1&vo=vo_1&value=vo_1},name=name_1&vo=vo_1&value=vo_1 
    这个
      

  4.   

    如果你用patn.exec(str)这个返回的是
    {name=name_1&vo=vo_1&value=vo_1},name=name_1&vo=vo_1&value=vo_1,{name=name_2&vo=vo_2&value=vo_2},name=name_2&vo=vo_2&value=vo_2,{name=name_3&vo=vo_3&value=vo_3},name=name_3&vo=vo_3&value=vo_3,{name=name_4&vo=vo_4&value=vo_4},name=name_4&vo=vo_4&value=vo_4
    这样的话,再利用一个str.replace(patn,"")就好了
      

  5.   

    var str = '{name=name_1&vo=vo_1&value=vo_1}{name=name_2&vo=vo_2&value=vo_2}{name=name_3&vo=vo_3&value=vo_3}{name=name_4&vo=vo_4&value=vo_4}';
    alert(
    str.match(/[^{}]+/g).join('\n')
    )
    alert(
    str.slice(1, -1).split(/\}\{/).join('\n')
    );
      

  6.   

    var str = "{name=name_1&vo=vo_1&value=vo_1}"
             +"{name=name_2&vo=vo_2&value=vo_2}"
             +"{name=name_3&vo=vo_3&value=vo_3}"
             +"{name=name_4&vo=vo_4&value=vo_4}"; 
    var patn =/[^{}]*(?=})/g; //这个正则会产生空项
    var lines = str.match(patn); //获取数组
    lines.sort();//把空项排前面
    alert(lines)
    lines.splice(0,lines.length/2)//删除空项,这个就是你需要的数组了
    alert(lines)
      

  7.   

    不好意思哈 showbo 结帖的时候没有看到你的回复。
      

  8.   

     <script type="text/javascript">   
    var str = "{name=name_1&vo=vo_1&value=vo_1}{name=name_2&vo=vo_2&value=vo_2}{name=name_3&vo=vo_3&value=vo_3}{name=name_4&vo=vo_4&value=vo_4}"; 
    var patn = /\{(.*?)\}/ig; 
    a=str.replace(patn,"$1,")
    document.write(a)
    </script> 
    这个的结果返回的是name=name_1&vo=vo_1&value=vo_1,name=name_2&vo=vo_2&value=vo_2,name=name_3&vo=vo_3&value=vo_3,name=name_4&vo=vo_4&value=vo_4,