<script type="text/javascript"> var reg1=/\d+[^\.]|\d+\.\d{1,2}$/; var ar=[18,18.1,18.11,18.1111]; for(i in ar){ alert(reg1.test(ar[i])); } </script>
按你的思路应该是这样 /^\d+$|^\d+\.\d{1,2}$/ 不过,更好的写法是 /^\d+(\.\d{1,2})?$/
reg1=/\d+[^\.]|\d+\.\d{1,2}$/; 这个正则实际上是用|分隔的两个正则/\d+[^\.]/和/\d+\.\d{1,2}$/,只要匹配其中一个就行 \d+[^\.]的意思是只要字符串任意位置有一个或一个以上数字,后面跟一个非点(.)字符就能匹配,这显然不对。
87,910
社区成员
224,616
社区内容
加载中
试试用AI创作助手写篇文章吧