如何找到存储在JMeter中不包含特定子字符串的正则表达式变量中的唯一匹配?

时间:2015-12-20 09:36:00

标签: json regex jmeter

我有一个json响应,如下面的http请求说x。在JMeter中,我使用的是正则表达式变量ABC,我可以使用后处理请求x。

{"id":123,"StartDate":1446422400000,........."Status":"Ok"..........
{"id":456,"StartDate":1446422400000,........"Status":"Not Ok"......
{"id":789,"StartDate":1446422400000,......."Status":"Not Ok"........
{"id":124,"StartDate":1446422400000,........."Status":"Ok"..........
{"id":654,"StartDate":1446422400000,........"Status":"Not Ok"

我希望有一个正则表达式给我ids 456,789和654,因为它的状态是“Not Ok”。请注意,上面的圆点表示中间有许多字符,数字和特殊字符。

我尝试了以下三个正则表达式(使用的模板是$ 1 $,匹配号是-1,因为我想捕获所有匹配的事件):

  1. \{"id":(\d+),"StartDate":(.+?)"Status":"Not Ok"
  2. \{"id":(\d+),"StartDate":(.+(?!"Status":"Ok"))"Status":"Not Ok"
  3. \{"id":(\d+),"StartDate":(.+(?!Ok))"Status":"Not Ok"
  4. 在上述所有情况下,它都会从{"id":123 till the last "Status":"Not Ok"中获取整个json响应数据,因此我只能在ABC中存储123个。我可以使用正则表达式来帮助我提取3个ID 456,789和654 ??

0 个答案:

没有答案