JavaScript 数字每三位加逗号/三位分节号正则表达式
数字每三位加逗号/三位分节号
function numberFormat(str) {
/**
* a123 => null
* "" => null
*/
if (isNaN(str) || !str) {
return null;
}
/**
* 00123 => 123
* 123. => 123
* 123.1230 => 123.123
*/
var s = (str + '').replace(/(^0+)|(\.+$)|(0+$)/g, "");
var regExp = new RegExp('^(-?[0-9]+)([0-9]{3})');
while(regExp.test(s)) {
s = s.replace(regExp, '$1,$2');
}
return s;
}
console.log(numberFormat(""));
//null
console.log(numberFormat("a00012345"));
//null
console.log(numberFormat("00012345"));
//12,345
console.log(numberFormat("00012345."));
//12,345
console.log(numberFormat("00012345.123"));
//12,345.123
console.log(numberFormat("00012345678910.123000"));
//12,345,678,910.123
如果您觉得有帮助,欢迎点赞哦 ~ 谢谢!!