手机号、银行卡号、身份证号、关键信息脱敏
老规矩,话不多说直接上代码
package com.util.conceal;
/**
* 数据脱敏工具
* Created by shi on 2022/2/14.
*/
public class ConcealUtil {
private static final int SIZE = 6;
private static final String SYMBOL = "*";
/**
* 实际替换动作
*
* @param username username
* @param regular 正则
* @return
*/
private static String replaceAction(String username, String regular) {
return username.replaceAll(regular, "*");
}
/**
* 身份证号替换,保留前四位和后四位
* <p>
* 如果身份证号为空 或者 null ,返回null ;否则,返回替换后的字符串;
*
* @param idCard 身份证号
* @return
*/
public static String idCardConceal(String idCard) {
if (idCard.isEmpty() || idCard == null) {
return null;
} else {
return replaceAction