我的帐号有09
或10
或11
位。帐号是从数据库动态加载的。
我想将327231123
显示为xxxxx1123
或32145678910
显示为xxxxxxx8910
。
我想用'x'替换所有数字,留下最后四位数字。
帐号数据类型为String
答案 0 :(得分:3)
您可以使用String.replaceAll
这样的方法:
public static void main(String[] args) {
System.out.println("327231123".replaceAll("\\d{5}", "*****"));
}
答案 1 :(得分:2)
试试这样:
String xs = new String(new char[accountNumber.length() - 4]).replace("\0", "X");
String lastFourDigit = accountNumber.substring(accountNumber.length() - 4);
String result = xs + lastFourDigit
例:
输入:327231123
输出:XXXXX1123
答案 2 :(得分:2)
研究String#replace()方法。
您也可以尝试使用简单的循环。
String accountNumber = "327231123";
String replacedByX = "";
for(int i = 0; i < accountNumber.length() - 4; i++) {
replacedByX += "x";
}
replacedByX += accountNumber.substring(accountNumber.length() - 4);