Regex获取一个Json字段

Regex获取一个Json字段,json,regex,Json,Regex,我有一个由API返回的JSON文本。我需要获取“id”字段的值,以便在测试中使用它(我正在JMeter中进行corrolate测试) 我可以尝试找到“id”:文本,但我无法获得Z3G2D93部分 Regex: /“id”:“(.+?)”/g JSON: { "req":{ "dat":{ "bt":"", "ot":"07-Apr 08:21", "typ":"PickUp", "tot":"3

我有一个由API返回的JSON文本。我需要获取“id”字段的值,以便在测试中使用它(我正在JMeter中进行corrolate测试)

我可以尝试找到“id”:文本,但我无法获得Z3G2D93部分

Regex:

/“id”:“(.+?)”/g

JSON:

{  
   "req":{  
      "dat":{  
         "bt":"",
         "ot":"07-Apr 08:21",
         "typ":"PickUp",
         "tot":"3480",
         "ast":"",
         "an":"Test Test",
         "id":"Z3G2D93"
      }
   }
}

按如下方式配置正则表达式提取器:

  • 参考名称:任何有意义的内容,即
    id
  • 正则表达式:
    “id”:“(.+?)”
  • 模板:
    $1$
顺便说一句,您可以使用RegExp Tester模式在侦听器的JMeter中测试正则表达式,如下所示:

有关如何弄清JMeter脚本失败的更多信息,请参阅本文


顺便说一句,使用available via

在@torazaburo上进行扩展可能更容易处理JSON响应:如果您有JSON,那么使用的工具就是JSON解析器。使用regexp进行JSON数据提取就像使用瑞士军刀吃意大利面一样,叉子随时可用。你从中得到了什么?这是什么语言?这可能会有帮助:-请按用户查看答案
hwnd
谢谢大家。这是用JMeter编写的(不是用编程语言)。我的正则表达式也会返回“id”(而不仅仅是id的值),但是我通过用这个正则表达式返回的内容替换第二条JSON消息(在相关测试中)的一部分来解决这个问题,它成功了。