举例,正文为:“xxbxyz”
要求:循环把“b”后面的字符一个个地匹配出来,结果应该为:
x
y
z
应该很简单才对,但不知道怎么做,找了许多资料和网文,都没成功。
我这样写“b(.+?)”只能匹配一次,取到一个“x”。请指教。

解决方案 »

  1.   

    afterb = "xxbxyz".replace(/b(.+)/,"$1").split("")
    for(i=0;i<afterb.length;i++)alert(afterb[i])
      

  2.   


    <script type="text/javascript">
    alert(
    ("xxbxyz".match(/[^b](?=[^b]*$)/ig)||[]).join('\n')
    )alert(
    (/[^b]+$/i.exec('xxbxyz')||[''])[0].split('').join('\n')
    );
    </script>
      

  3.   

    非常感谢,尤其是myvicy与muxrwc。你们能达到题目的要求了,但并不是我想要的,题目只是举例。要求的重点是:把指定位置之后的字符进行循环匹配,谢谢。
      

  4.   


    //貌似是这样的吧...<script type="text/javascript">
    var key = 'xx';
    alert(
        ('xxbxyz'.split(key)[1]||['','']).split('').join('\n')
    );
    </script>
      

  5.   


    那个错了改下...<script type="text/javascript">
    var key = 'x';
    alert(
        ('xxbxyz'.split(key)[1]||'').split('').join('\n')
    );
    </script>
      

  6.   

    <script type="text/javascript">
    var key = 'xx';
    alert(
        ('xxbxyz'.split(key)[1]||'').split('').join('\n')
    );
    </script>
    - -,少个X.
    如果你的串里key是唯一的话,这么做就可以了.
      

  7.   

    http://topic.csdn.net/u/20080314/15/3caee476-1f98-4820-b7e3-bfd77cf6fc67.html?seed=221781510.net 中可以实现,怎 JavaScript 和 Delphi 中不行呢?
      

  8.   

    (? <=xb.*)\w
    JavaScript、Delphi不支持?<=这样的正则语法吧...
      

  9.   

    (r'b\s*=\s*(\d+)',   s)输出b后的字符
      

  10.   


    var sToMatch = "xxbxyzb123b456b789blwt213";
    var regB = /b[^b]+/gi;
    var temp = "";
    var arrMatches = sToMatch.match(regB);
    for( var i = 0; i < arrMatches.length; i++){
      temp = arrMatches[i].split('');
      for(var j = 0; j < temp.length; j++)
      {
        if(temp[j] != 'b')
        document.write(temp[j] + "<br />");
      }
    }
    看看是不是楼主需要的?已经测试过了
      

  11.   

    不需要正则,找到b,然后截取后面的subString循环下读出每个字符就行了