var re = /^(¥)?(-)?(\d+|,\d{3})+(\.\d{0,8})?$/;这是目前用的,不过有些问题
格式要求是:
1.整数位数限制为(1-12)符号不计算在内
2.小数部分限制为(0-8)位
3.三位一分割,可以加逗号,加的话,所有
三位分割的地方都加,不加的话一个也不加
现在的这个
",123" 是非法,现在这个却也匹配上了
格式要求是:
1.整数位数限制为(1-12)符号不计算在内
2.小数部分限制为(0-8)位
3.三位一分割,可以加逗号,加的话,所有
三位分割的地方都加,不加的话一个也不加
现在的这个
",123" 是非法,现在这个却也匹配上了
/^(¥)?(-)?[1-9]\d{0,2}((,\d{3}){0,3}|\d{0,9})(\.\d{0,8})?$/
var test = '13,123.1';
var reg = /^¥?-?(?!\.)(?!\d{13})\d{1,3}(,?\d{3})*(\.\d{1,3})?$/ig;
document.write(test.match(reg));
</script>
<script type="text/javascript">
var test = '13,123.1';
var reg = /^¥?-?(?!\.)(?!\d{13})\d{1,3}(,?\d{3})*(\.\d{1,8})?$/ig;
document.write(test.match(reg));
</script>
123456,789,123.12345678
嗯。疏忽了。
这样试试?<script type="text/javascript">
var test = '123456,789,123.12345678';
var reg = /^¥?-?(?!\.)(?!\d{13})(?:\d{1,3}(?:,\d{3})*|\d{1,12})(?:\.\d{1,8})?$/ig;
document.write(test.match(reg));
</script>
var test = '123456,789,123.12345678';
var reg = /^¥?-?(?!\.)(?!\d{13})(?:\d{1,3}(?:,\d{3}){0,3}|\d{1,12})(?:\.\d{1,8})?$/ig;
document.write(test.match(reg));
</script>
var re = /^(¥)?(-)?(0|([1-9]\d{0,2}((,\d{3}){0,3}|\d{0,9})))(\.\d{1,8})?$/