我有一个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,因为我想捕获所有匹配的事件):
\{"id":(\d+),"StartDate":(.+?)"Status":"Not Ok"
\{"id":(\d+),"StartDate":(.+(?!"Status":"Ok"))"Status":"Not Ok"
\{"id":(\d+),"StartDate":(.+(?!Ok))"Status":"Not Ok"
在上述所有情况下,它都会从{"id":123 till the last "Status":"Not Ok"
中获取整个json响应数据,因此我只能在ABC中存储123个。我可以使用正则表达式来帮助我提取3个ID 456,789和654 ??