覆水难收。 2016-11-23 02:10 采纳率: 0%
浏览 921
已结题

js正则表达式普通方式与构造函数方式匹配相同字符串得出的结果不同

var re = new RegExp("(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)","g"); var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/g; var c = "012"; document.write(re.test(c)); document.write("<br/>"); document.write(reg.test(c));
    正则表达上如上,一个得出的结果为true,一个为false。为什么呢?
  • 写回答

4条回答 默认 最新

  • 覆水难收。 2016-11-23 02:18
    关注
     <script type="text/javascript">
    
        var re = new RegExp("(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)","g");
        var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/g;
        var c = "012";
    
        document.write(re.test(c));
        document.write("<br/>");
        document.write(reg.test(c));
            </script>
    
    评论

报告相同问题?