java 姓名和数字脱敏

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/m0_37822534/article/details/93488194

 /**
     * 名字脱敏
     * 规则,张三丰,脱敏为:张*丰
     * @param name
     * @return
     */
    public static String nameDesensitization(String name){
        if(name==null || name.isEmpty()){
            return "";
        }
        String myName = null;
        char[] chars = name.toCharArray();
        if(chars.length==1){
            myName=name;
        }
        if(chars.length==2){
            myName=name.replaceFirst(name.substring(1), "*");
        }
        if(chars.length>2){
            myName=name.replaceAll(name.substring(1, chars.length-1), "*");
        }
        return myName;
    }
    /**
     * 客户编号脱敏
     * 135062519690423003400脱敏后135***************400
     * @param custNo
     * @return
     */
    public static String custNoDesensitization(String custNo){
        if(custNo==null || custNo.isEmpty()){
            return "";
        }
        char[] chars = custNo.toCharArray();
        for(int i=0 ;i<chars.length;i++){
            if(i>2 && i< chars.length-3){
                chars[i]='*';
            }
        }
        String myCustNo = String.valueOf(chars);
        return myCustNo;
    }

猜你喜欢

转载自blog.csdn.net/m0_37822534/article/details/93488194