Java开发中常见的一些客户信息脱敏规则
常见的信息校验规则:
参考: 链接: https://blog.csdn.net/A_aspectJ/article/details/131877680?spm=1001.2014.3001.5502
脱敏处理
对常见的重要信息一般都要脱敏处理,比如手机号码,邮箱,身份证号,银行卡号;这些敏感度强烈的号码信息,必须进行代码脱敏处理。
//脱敏规则:只显示手机号的前面3位和尾号后4位,中间号码显示为‘****’
public static void regexPhoneNo(String[] args) {
String phone = "18968999999";
String result1 = phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
System.out.println("脱敏的手机号:" + result1);
}
//脱敏规则:邮箱只显示前3个字符和'@'之后的字符,第一个字符之后’@‘之前的,显示为‘****’
public static void regexEmail(String args) {
String email = "20938889@qq.com";
String result = email.replaceAll("(^\\w{3})[^@]*(@.*$)", "$1****$2");
System.out.println("脱敏的邮箱:" + result);
}
//脱敏规则:身份证号只显示前三位和后四位,其余显示为‘****’
public static void regexIdCard(String[] args) {
String idCard = "410329199809281889";
String result = idCard.replaceAll("(?<=\\w{3})\\w(?=\\w{4})", "*");
System.out.println("脱敏的身份证号:" + result);
}
//脱敏规则:银行卡号只显示前六位和后四位,其余显示为‘****’
public static void regexBankCardNo(String[] args) {
String bankCard = "6210568888897855555";
String result = bankCard.replaceAll("(\\d{6})\\d{9}(\\d{4})", "$1****$2");
System.out.println("脱敏的银行卡号:" + result);
}