public class IdUtils {
private static final int LENGTH_1 = 1;
private static final int LENGTH_2 = 2;
/**
* 姓名脱敏
* @param name
* @return
*/
public static String changeName(String name){
String newName = "";
if (StringUtils.isEmpty(name)){
return newName;
}
if (name.length() == LENGTH_1){
return name;
}
if (name.length() == LENGTH_2){
newName = name.replaceFirst(name.substring(1), "*");
}
if (name.length() > LENGTH_2){
StringBuffer sb = new StringBuffer();
sb.append(name.substring(0,1));
for (int i = 0;i < name.length() - LENGTH_2;i++){
sb.append("*");
}
sb.append(name.substring(name.length()-1));
newName = sb.toString();
}
return newName;
}
/**
* 获取32位UUID
* @return
*/
public static String getUUID32(){
return UUID.randomUUID().toString().replace("-","").toLowerCase();
}
/**
* 身份证脱敏
* @param idCardNum
* @return
*/
public static String changeIdCardNum(String idCardNum){
if (StringUtils.isEmpty(idCardNum) || idCardNum.length() < 8){
return idCardNum;
}
return idCardNum.replaceAll("(?<=\\w{3})\\w(?=\\w{4})", "*");
}
}
Java 姓名脱敏的一点点改进 针对大于三个字 或叠字
最新推荐文章于 2024-07-26 03:15:38 发布