- 时间:2021-02-21 05:12 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:正负小数点后两位浮点数实现原理及代码
[b]背景:[/b]项目中需要做个对两位小数点的正负浮点数的处理,
[b]要求:[/b]非数字或者.字符自动清除,并对.12自动修补.前的0
[b]原理:[/b]在输入框中加入两个事件,keyup与blur,keyup处理字符串中非要求的字符,blur中对最终字符串处理成理想的格式111.11
[b]实现:[/b]通过七个正则处理掉主功能 val代表输入的字符串
/^\d*\.?\d{0,2}$/ 验证val是否是ddd.dd的格式,是则不处理,否才处理
/[^.0-9]+/ 处理掉val中所有的非数字与.的字符
/(?:\d*\.\d{0,2}|\d+)/ 将val处理成正确的格式。
/^\d+$/ 当是整数时的处理
/^\.\d{0,2}$/ 小数点前没有数字时处理
/^\d+\.\d{0,2}$/ 小数点后数字位数在0-2之间时的处理
/^0+[1-9]\d*\.?\d{0,2}$/ val前面有0时的处理
测试数据:
fdfd100.12 122.121 12t12.57 12546 1245. 125.4 154.45.456 .126 005245.121 dfdffd等等
[url=http://xiazai.jb51.net/201309/yuanma/moneyFormat_jb51.net.rar]Demo下载[/url]