var s = "00000001哈哈哈哈哈,00000002嘿嘿嘿嘿嘿";
变为
1哈哈哈哈哈,2嘿嘿嘿嘿嘿
也就是说把前面的0全部截掉,用正则如何写?谢谢有人给出了s = s.replace(/0*(\d)/g, '$1.');
但是var s = "00000100哈哈哈哈哈,00000200嘿嘿嘿嘿嘿";
就出问题了,结果是 "10哈哈哈哈哈,20嘿嘿嘿嘿嘿";ps:字符串可能很长但截取的位数是给了的而且知道最大是8位的数字,谢谢大家了

解决方案 »

  1.   

    L@_@K
    var s = "00000100哈哈哈哈哈,00000200嘿嘿嘿嘿嘿";
    s = s.replace(/0*([1-9]\d*)/g, '$1.');
    alert(s);
      

  2.   

    $1 后面要点么?不要滴话,去了就行L@_@K
    var s = "00000100哈哈哈哈哈,00000200嘿嘿嘿嘿嘿";
    s = s.replace(/0*([1-9]\d*)/g, '$1');
    alert(s);//00000100哈哈哈哈哈,200嘿嘿嘿嘿嘿
      

  3.   


    <script type="text/javascript">
    <!--
    var s = "00000001哈哈哈哈哈,00000002嘿嘿嘿嘿嘿";
    alert(s.replace(/0/g,""))
    //-->
    </script>
      

  4.   

    谢5楼的,可是如果后面有如果有var s = "00000100哈哈哈哈哈V1.0.11,00000200嘿嘿嘿嘿嘿V1.1.111";用s= s.replace(/0*([1-9]\d*)/g,'$1'); 
    就会出现问题后面的点会多出来