正则表达式记录
let reg = /^(([1,9]{1}[0-9]{0,1})|(0{1}))(\.{0}|\.\d{1,2})$/;
(1)^
匹配输入字行首,^ 也匹配 “\n” 或 “\r” 之后的位置
以一位非 0 数字或者一位非 0 数字 + 任意数字或者一位 0 开头
(2)$
匹配输入行尾,$ 也匹配 “\n” 或 “\r” 之前的位置
没有小数点 或者 小数点后接任意一位 or 两位数字
let reg = /(^[1-9]\d*(\.\d{1,2})?$)|(^0(\.\d{1,2})?$)/; // 不符合题目,也值得记录
(3)*
匹配前面子表达式任意次,* 相当于
以非 0 数字开头,其后接任意 n 个数字
(4)?
匹配前面子表达式 0 次或者 1 次,? 相当于
没有小数点部分 或者 只有一个小数点部分
function toMoney(value) { // value是字符串
return ((value.toString().indexOf('.') == -1 ? parseFloat(value) : parseFloat(value).toFixed(2)) + '').replace(/(\d{1,3})(?=(\d{3})+(?:$|\.))/g, '$1,')
}
// 通过正则表达式将 11111111 -> 11,111,111 ,11111.00 -> 11,111.00

浙公网安备 33010602011771号