比如:001002003这一串字符,装换成a["001","002","003"]这种形式的,可以每三位是一个数组值,请问各位高手能实现么?

解决方案 »

  1.   


    var s = "001002003"
    var re = new RegExp(".{3}","g")
    var a = []
    while ((n=re.exec(s)) != null){
        a[a.length] = n[0]
    }
    for(i in a) alert(a[i])
      

  2.   

    <script type="text/javascript">
    var test = "0010020034";
    var arrTest = [];
    var item = "";
    for (var index = 0; index < test.length; index++) {

      item = item + test.charAt(index);
    if (((index + 1) % 3 == 0 && item.length > 0) || index == test.length - 1) {
    arrTest.push(item);
    item = "";
    }
    }for (var index = 0; index < arrTest.length; index++) {
    alert(arrTest[index]);
    }</script>
      

  3.   

    var s = "001002003"
    var reg=/\d{3}/g;
    alert(s.match(reg))
      

  4.   

    完善下,不足3个数的显示
    var s = "00100200343"
    var reg=/\d{3}|\d{2}|\d{1}/g;
    alert(s.match(reg))
      

  5.   

    <script>
    var s="00100200343";
    alert(s.match(/\d{3}|\d+$/g));
    </script>