日期:2014-05-16  浏览次数:20438 次

逢千位加入逗号分割, 正则如何给数字加标点?
如有数字 1000 ,888000等,正则怎么把它转换成   1,000,888,000 这样显示的货币格式?

------解决方案--------------------
.replace(/([0-9])(?=([0-9]{3})+$)/g,'$1,');
------解决方案--------------------
<script type="text/javascript">
// 方法1:
var num = 1000;
// 不过最后有两位小数
alert(num.toLocaleString()) // 1,000.00



// 方法2:
function formatNumber(str) {   
    if(str.length <= 3){   
        return str;   
    } else {   
        return formatNumber(str.substring(0,str.length-3))+','+str.substring(str.length-3);   
    }   
}   

alert(formatNumber(num + '')); // 1,000
</script>

------解决方案--------------------
.replace(/\d+?(?=(?:\d{3})+$)/img, "$&,");
试试吧;