【java】替换json字符串的敏感值,如密码

上代码:

java 复制代码
    /**
     * @Description:
     * @param input 替换前原始字段
     * @param fields 需要替换字段的名称,可以写多个,替换后的值是 ******
     * @return java.lang.String
     */
    public static String hiddenSecretField(String input, List<String> fields) {
        final String SECRET_SAFE_WORD = "$1******$2";
        String tmp = input;
        for (String field : fields) {
            String regStr = String.format("(\"%s\"\\s*:\\s*\")[^\"]+(\")", field);
            tmp = input.replaceAll(regStr, SECRET_SAFE_WORD);
        }
        return tmp;
    }

问题点:

需要标准格式的json字符串。至少要满足 "field":"value" 一个键值对中没有回车字符。

参考文章:
正则分组替换

相关推荐
rabbit_pro4 小时前
SpringBoot3使用PostGis+GeoTools整合MybatisPlus
java·spring
说给风听.4 小时前
零基础学 JSON:原理、语法与应用全解析
json
望眼欲穿的程序猿5 小时前
Ai8051U+DHT11温湿度!
java·开发语言
一只大马猴呀5 小时前
IntelliJ IDEA 中启动项目不显示端口号
java·ide·intellij-idea
Hx_Ma165 小时前
Map集合的5种遍历方式
java·前端·javascript
小手cool5 小时前
Java 列表中查找最小值和最大值最有效率的方法
java
惊讶的猫5 小时前
多线程同步问题及解决
java·开发语言·jvm
wfsm5 小时前
工厂模式创建动态代理实现类
java·开发语言
好好研究5 小时前
总结SSM设置欢迎页的方式
xml·java·后端·mvc
Hui Baby5 小时前
java -jar 启动原理
java·pycharm·jar