【问题标题】:Masking some value inside Json string in Java [closed]在Java中屏蔽Json字符串中的一些值[关闭]
【发布时间】:2016-03-24 12:40:24
【问题描述】:

假设我有以下 Json 字符串:

{   
    "name":"noor",
    "pass":"12345" 
}

我想使用正则表达式屏蔽传递值,如下所示

{
    "name":"noor",
    "pass":"*****" 
}

如何使用 Java 正则表达式?

【问题讨论】:

  • 你用正则表达式的方式试过什么?您是否在(任意数量的站点)上完成了正则表达式教程?

标签: java json regex


【解决方案1】:

试试这个:

"pass":"(.*?)"

见于:https://regex101.com/r/cK4bD0/1

【讨论】:

    【解决方案2】:

    试试这个

    String jsonString = "{ \"name\":\"noor\", \"pass\":\"12345\" }";
    
    String result = jsonString.replaceAll("(?<=pass\":\")(.*?)(?=\")", "*****");
    
    System.out.println(result);
    

    【讨论】:

    • 虽然这段代码可以回答问题,但最好包含一些上下文,解释如何它的工作原理和何时 i> 使用它。从长远来看,纯代码的答案没有用处。
    【解决方案3】:
    {[^}]*"pass"\s*:\s*"(.*?)"[^}]*}
    

    这里是演示: https://regex101.com/r/nL3tP2/2

    【讨论】:

      猜你喜欢
      • 2020-10-13
      • 2019-08-22
      • 1970-01-01
      • 2018-01-11
      • 2014-09-07
      • 2019-11-20
      • 2021-06-26
      • 2017-12-15
      • 1970-01-01
      相关资源
      最近更新 更多