一,字符串隐藏替换

         1,需求

             长度为二位以下者,还回原串
             长度为二位以上到四位者,保留前前一位与最后一位中间以***替换
             长度为四位以上者到八位者,保留前二位与最最后二位,中间以***替换
             长度为八位以上者,保留以前三位与后三位,中间以***替换。

         2,适用场景

             针对用户名,姓名等敏感信息,做隐藏处理。

        3,代码实现 

       

    /**
    	 * 长度为二位以下者,还回原串
    	 * 长度为二位以上到四位者,保留前前一位与最后一位中间以***替换
    	 * 长度为四位以上者到八位者,保留前二位与最最后二位,中间以***替换
    	 * 长度为八位以上者,保留以前三位与后三位,中间以***替换。
    	 * @param number
    	 * @return
    	 */
    	public static String formatNumber(String number){
    		if(StringUtils.isBlank(number)) return "";
    		if(number.length()<=2) return number;
    		if(number.length()<=4) return number.substring(0,1)+"***"+number.substring(number.length()-1);
    		if(number.length()<8) return number.substring(0,2)+"***"+number.substring(number.length()-2);
    		return number.substring(0,3)+"***"+number.substring(number.length()-3);
    	}
    联系QQ:343886028 --加QQ群 145315854