JMeter如何提取完整JSON并用正则批量替换LoanAmount值为1000?
实现完整JSON提取与批量替换步骤
1. 配置JSON Extractor提取完整JSON
在返回目标JSON的请求下添加JSON Extractor,配置如下:
- 引用名称:
fullJson(自定义变量名,后续脚本会用到) - JSON Path表达式:
$(表示提取整个JSON结构) - 匹配数字:
1(仅提取第一个结果,即完整JSON) - 其他选项保持默认
2. 添加JSR223 PostProcessor编写替换脚本
在同一个请求下添加JSR223 PostProcessor,选择groovy作为脚本语言,输入以下代码:
// 获取原始完整JSON变量 def originalJson = vars.get("fullJson") // 正则匹配所有"LoanAmount"对应的数字值,批量替换为1000 def modifiedJson = originalJson.replaceAll(/"LoanAmount"\s*:\s*\d+/, '"LoanAmount":1000') // 将处理后的JSON存入新变量,供后续请求调用 vars.put("modifiedFullJson", modifiedJson)
- 正则说明:
"LoanAmount"\s*:\s*\d+会匹配所有带引号的LoanAmount键,忽略键与值之间的任意空格,精准匹配后续的数字内容 - 替换后的
modifiedFullJson就是处理完成的JSON,后续请求直接引用${modifiedFullJson}即可
3. 后续请求使用处理后的JSON
在需要传递该JSON的请求中,直接使用变量${modifiedFullJson},无需再拆分提取多个JSON片段。
内容的提问来源于stack exchange,提问作者Garuna
相关产品推荐
相关产品推荐

