1.js 数字转千分位: 参考: https://blog.csdn.net/xuyunfei_2012/article/details/54628981
实现的功能为:
123456789 转换为123,456,789
使用的正则表达式如下所示:
/(\d{1,3})(?=(\d{3})+$)/g
使用方式:
var num = 123456789;
num.toString().replace(/(\d{1,3})(?=(\d{3})+1,');
执行完结果就是: 123,456,789
下面我来解释一下这个正则表示是怎么实现的功能
这里面用到的正则表达式元素有
\d 匹配数字相当于[0-9]
{m,n} 匹配的数目大于m小于n,所以\d{1,3}的意思就是匹配1到3个数字
?= 正向前瞻,它稍微复杂一点,说不清楚就举个例子
/\d/会匹配一个数字,/\d(?=\w)/依然只匹配一个数字,但是它要求数字后面跟一个字母
'1a'.match(/\d(?=\w)/) 结果为 1
所以/(\d{1,3})(?=(\d{3})+$)/g这个正则表达式的意思就是:
匹配1到3个数字,并且这个数字后面要跟着3的倍数的数字,也就是3,6,9,...个数字
'123456789'.match(/(\d{1,3})(?=(\d{3})+$)/g) 会匹配到 ["123", "456"]
————————————————
原文链接:https://blog.csdn.net/xuyunfei_2012/article/details/54628981
2.python数字加千分位: 参考:
https://my.oschina.net/u/3579120/blog/1532547