數字每三位新增乙個 , 的不同實現方式

2022-05-14 09:48:31 字數 914 閱讀 5717

處理數值,為每三位數加乙個逗號,相容浮點型數值

1234567.123412345678為例

function addcomma(num = 0))

.reverse() //倒序回來

.join('') + (temps[1] ? '.' + temps[1] : ''); //如果是浮點數,就再加上小數部分

}addcomma(1234567.1234) //1,234,567.1234

addcomma(12345678) //12,345,678

function addcomma(num = 0))+\.)/g : /(\d)(?=(\d)+$)/g;

return num.tostring().replace(reg,'$1,');

}addcomma(1234567.1234) //1,234,567.1234

addcomma(12345678) //12,345,678

利用正規表示式來處理的思路:

右邊的部分很好匹配:/(\d)+/, 再加上開始算的符號,浮點數要加上\..匹配除換行符之外的任何單個字元,加上\.轉義,就是匹配'.')。整數加上$結束符。

左邊的部分,必須依賴於右邊的部分。比如說必須右邊有三位,左邊才會匹配成功,加乙個','。就需要用到?=正向肯定查詢(x(?=y)僅當x後面跟著y時才會匹配x)。(\d)(?=y)y就是右邊的部分。

再加上全域性搜尋的標誌g,不然只會匹配一組,只加乙個','。

為數字每三位新增分割符

關於正則,jeffrey曾經說過的一句話很記憶尤深 我曾經想過用pascal處理電子郵件,但是發現,沒有正規表示式,處理極其困難。困難到我決定先用pascal寫乙個類似perl的正規表示式包,再來處理其他事情。記錄下學習中點滴,以共勉。關於環視。網上的例子很多,這裡記錄下利用環視為數字新增,分隔符 ...

在數字字串中按每三位新增乙個逗號

perform format numeric using gt sf head debit gt sf head debit.form format numeric using num org num tag.data lt num type table of string with header ...

php數字每三位加逗號的功能函式

php實現數字格式化,數字每三位加逗號的功能函式,具體 如下 function num format num explode num 把整數和小數分開 rl num 1 小數部分的值 j strlen num 0 3 整數有多少位 sl substr num 0 0,j 前面不滿三位的數取出來 sr...