脱密工具类——隐藏手机号、身份证号码等


 

我们在开发中为了用户的隐私,需要将一些信息隐藏,例如隐藏手机号中间四位等。

import org.apache.commons.lang3.StringUtils;

public class EncryptUtils {
    
    // 手机号码前三后四脱敏
    public static String mobileEncrypt(String mobile){
        if(StringUtils.isEmpty(mobile) || mobile.length()!=11){
            return mobile;
        }
        return mobile.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
    }
    
    // 身份证前三后四脱敏
    public static String idCardEncrypt(String idCard){
        if(StringUtils.isEmpty(idCard) || (idCard.length() != 15 && idCard.length() != 18)){
            return idCard;
        }
        return idCard.replaceAll("(?<=\\w{3})\\w(?=\\w{4})", "*");
    }
    
    // 姓名第一位脱敏(不考虑复姓,特殊姓氏)
    public static String nameEncrypt(String name){
        if(StringUtils.isEmpty(name) || name.length() < 1){
            return name;
        }
        return name.replaceAll("(?<=[\\u4e00-\\u9fa5]{1})[\\u4e00-\\u9fa5]", "*");
    }
    
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM