【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" 一个键值对中没有回车字符。

参考文章:
正则分组替换

相关推荐
北城笑笑2 分钟前
Vue 100 ,Metaspace memory lack Error( 元空间内存不足 )
java·前端·javascript·vue
Han.miracle7 分钟前
Spring IoC 与 DI 核心知识点综合测试题
java·前端·数据库
婉然从物10 分钟前
IDEA中plugins无法连接网络
java·ide·intellij-idea
xiaogai_gai10 分钟前
ETL数据流程实战:轻易云平台整合金蝶云星空API接口
java·数据仓库·etl
sheji341618 分钟前
【开题答辩全过程】以 基于springboot的健身预约系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
代码雕刻家27 分钟前
3.1.课设实验-Java核心技术-检索简历
java·开发语言
尤理有理28 分钟前
求你了,别用 YYYY-MM-dd!
java
共享家952729 分钟前
Java 入门(IDEA 高效调试 与 数组)
java·开发语言·intellij-idea
东离与糖宝29 分钟前
315警示:AI接口被恶意调用?Java高并发+限流+鉴权防护实战
java·人工智能
YmaxU30 分钟前
SpringAIAlibaba学习使用 ---Graph
java·学习·spring·ai