項目中涉及金錢展示的通常要求展示爲千分符,現在把正則表達式記錄如下
function toThou(str){
var reg=/(\d)(?=(?:\d{3})+\b)/g
return str.replace(reg,'$1,')
}
toThou('12455.45')
// '12,455.45'
正則分析
1、 捕獲組 (\d) ------ \d 匹配數字 (相當於 [0-9])
2、肯定型順序環視 (?=(?:\d{3})+\b)
斷言下面的正則表達式匹配
非捕獲組 (?:\d{3})+ ------ + 量詞 — 匹配 1 至 無窮 次
\d{3} ------ \d 匹配數字 (相當於 [0-9])
{3} 量詞 — 實際匹配 3 次
\b 斷言單詞邊界處的位置:(^\w|\w$|\W\w|\w\W)
3、g 全局匹配
注意:傳入爲字符串
推薦正則分析網站 : http://tool.oschina.net/regex/?optionGlobl=global