Replace 掉指定字符串中间的一段内容

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_15071263/article/details/82994997

Replace 掉指定字符串中间的一段内容


1、不可变长度,固定长度字符串

比如手机号的脱敏处理,手机号是不可变长度,固定长度的一个字符串
15197447018 需要 显示为 151****7018

		StringBuffer buffer = new StringBuffer("15197447018");
        buffer.replace(3,7,"****");
        System.out.println(buffer.toString());
2、可变长度,不固定长度字符串

比如邮箱脱敏处理,邮箱是可变长度,不固定长度字符串
[email protected] 显示为 347******@qq.com

	// 通过 replace 进行脱敏
    private String replace(String source){
        StringBuffer buffer = new StringBuffer(source);
        int length = buffer.length();
        // 根据你需要保留显示的长度进行设置
        if (length>6){
            String replace = "";
            for (int i = 0; i < length-6; i++) {
                replace += "*";
            }
            // 保留前面三位和后面三位
            buffer.replace(3,length-3,replace);
            return buffer.toString();
        } else {
            return source;
        }
    }

猜你喜欢

转载自blog.csdn.net/qq_15071263/article/details/82994997