【发布时间】:2016-10-14 00:32:19
【问题描述】:
在 JSON 响应中替换字符串的最佳方法是什么?就我而言,我需要使用正则表达式提取响应。提取的值保存为 savedItems 并在保存的项目中,我需要搜索下面的字符串并替换然后再次发布。在 2 个请求中,第一个请求获取然后发布第二个请求(替换字符串)。
我正在尝试在正则表达式提取器中使用 BellShell PostProcessor 并尝试替换,但它似乎不起作用。
Original string: rate":10.370681}
Replace with this: rate":10.370681,"$rowSelect":false,"$rowState":"invalid":false,"dirty":false,"added":false}
可能有 100 - 500 个要更换,有什么建议吗?我还是 beanshell 的新手,用下面的代码尝试过,但还没有运气:)
debug();
try {
String savedItems = vars.get("Saved_Item");
String updatedSavedItems = savedItems.replaceAll("rate":10//.370681//}", "rate":10//.370681,"//$rowSelect":false,"//$rowState"://{"invalid":false,"dirty":false,"added":false//}");
vars.put("UPDATED", updatedSavedItems);
}
catch (Throwable ex) {
log.error("Problem in Beanshell", ex);
throw ex;
}
【问题讨论】:
标签: json regex jmeter beanshell