Java-----隱藏手機號 身份證號 中間四位
phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");
152****4799
idCard.replaceAll("(\\d{4})\\d{10}(\\w{4})","$1*****$2");
4304*****7733
$1、$2、……表示正則表達式里面第一個、第二個、……括號里面的匹配內容
-------字符串截取方式----------------------------------------------------------------------------------------------
String realname = "程序員";
String mobile = "15888888888";
String realname1 =null;
char[] r = realname.toCharArray();
char[] m = mobile.toCharArray();
if(r.length ==1){
realname1 = realname;
}
if(r.length == 2){
realname1 = realname.replaceFirst(realname.substring(1),"*");
}
if (r.length > 2) {
realname1 = realname.replaceFirst(realname.substring(1,r.length-1) ,"*");
}
for(int i=0; i<m.length;i++){
if(i>2 && i<7){
m[i] = '*';
}
}
String mobile1 = String.valueOf(m);
System.out.println(realname1);//程*員
System.out.println(mobile1);//158****8888