信用卡號碼我想通過分組用空格如何格式化的Java
例如5112345112345114分隔的數字格式化信用卡號碼的格式應爲:5112 3451 1234 5114
我想指定一個掩碼並將其中的數字顯示出來。例如:「#### #### #### ####」爲16位數的信用卡號碼。對於美國運通(15位數字),應該如下所示:「#### ###### #####」。如果號碼還沒有完全可用(因爲它是由持卡人輸入的),它應該從左側開始渲染到蒙版中。
有沒有一個庫,甚至在Java中的API來做到這一點?我查看了java.text.MessageFormat,但找不到分割字符串的方法。看來.net有一個API:String.Format(「{0:0000 0000 0000 0000}」,數字)。
添加先行避免尾隨空格:' 「5112345112345114」 .replaceAll(/ \ d {4}(= \ d)/, '$ 0'?)==「5112 3451 1234 5114「 – Love
一個更通用的解決方案,用於將組中的任何字符串內容分組爲4: '」5112345112345114「.replaceAll(/。{4}(?!$)/,'$ 0')==」5112 3451 1234 5114「' – Love