/** * renhaijun add * 輸入 銀行卡號,自動添加空格, 如 6222 8888 8888 8888 * 24 位銀行卡有效 * * @param inputStr:輸入框內 當前輸入的字符 ( 相當於 mPhoneTempStr) , beforeStr: 輸入框內 之前的字符(相當於 s) * @return */ public static String addSpaceBankCard(String beforeStr, String inputStr) { // 大量測試過,是正常使用的。暫無異常 renhaijun add LogUtil.e(TAG, " inputStr: " + inputStr); LogUtil.e(TAG, " inputStr.length: " + inputStr.length() + "; ,,beforeStr.length: " + beforeStr.length() + ";"); if ((inputStr.length() != 5 && inputStr.length() != 10 && inputStr.length() != 15 && inputStr.length() != 20 && inputStr.length() != 25 && inputStr.length() != 30) || (inputStr.length() - beforeStr.length() > 1) /*&& inputStr.length() <= 11*/) { //這個判斷 用在 查找通訊錄的聯繫人,回調顯示判斷.或者是直接粘貼的判斷。 LogUtil.e(TAG, " ---------------------------------- 判斷"); LogUtil.e(TAG, " inputStr.length: " + inputStr.length() + ";"); String str = ReplaceStringUtil.replaceSpaceStr2(inputStr); StringBuffer sb = new StringBuffer(); for (int i = 0; i < str.length(); i++) { if ((str.length() == 4 && i == 3) || (str.length() == 8 && i == 7) || (str.length() == 12 && i == 11) || (str.length() == 16 && i == 15) || (str.length() == 20 && i == 19) || (str.length() == 24 && i == 23) ) { sb.append(str.substring(i, i + 1)); continue; } if (i == 3 || i == 7 || i == 11 || i == 15 || i == 19 || i == 23) { sb.append(str.substring(i, i + 1) + " "); } else { sb.append(str.substring(i, i + 1)); } } String strtemp = sb.toString(); return strtemp; } // 下面的幾個判斷,是輸入框手動輸入時的判斷。 輸入 if (beforeStr.length() < inputStr.length()) { LogUtil.e(TAG, " ---------------------------------- 輸入"); int length = inputStr.toString().length(); if (length == 5 || length == 10 || length == 15 || length == 20 || length == 25 || length == 30) { if (!inputStr.toString().substring(length - 1, inputStr.length()).equals(" ")) { String str = inputStr.toString().substring(0, length - 1) + " " + inputStr.toString().substring(length - 1, length); return str; } } } if (beforeStr.length() > inputStr.length()) { //刪除 LogUtil.e(TAG, " ---------------------------------- 刪除"); return inputStr.toString().trim(); } return inputStr; }
輸入 銀行卡號,自動添加空格, 如 6222 8888 8888 8888
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.