luanchuan1 v1.0.0
这是一个数字转换为汉字的案例 如输入123---转换为一百二十三
基本使用:先创建一个函数fn
// 判断里面是否有字母或别的 if(!/^\d$/.test(n)){ return "数字输入有误" } var reg = new RegExp("(0)(1-9+0-9+)", "g"); n = n.replace(reg, "$2") // console.log(n) var unit = '千百十亿千百十万千百十个';
if (n.length > unit.length) { return '数据过长'; } var newStr = ''; var nlength = n.length; unit = unit.substr(unit.length - nlength); for (var i = 0; i < nlength; i++) { newStr += '零一二三四五六七八九'.charAt(ni) + unit.charAt(i); } newStr = newStr.substr(0, newStr.length - 1); // $1:捕捉第一个匹配的结果 newStr = newStr.replace(/零(千|百|十)/g, '零').replace(/(零)+/g, '零').replace(/零(亿|万)/g, '$1'); for (var i = newStr.length - 1; i > 0; i--) { if (newStri == "零") { newStr = newStr.replace(newStri, "") } else { break; } } return newStr;
调用函数
7 years ago