regex - Jmeter:如何使用 Regx 检索第二行中的值?
问题描述
我正在从数据库中检索名字,并使用 REGx(jmeter) 将其存储在对象中。由于在第 2 行(PF 屏幕截图)中检索到数据,当我在 api 请求中发送它时,它会进入第 2 行,如下所示。因此 API 返回 400。请为此提出可能的解决方案?
数据库响应:
FirstName
RockyBhai
使用正则表达式
FirstName([^"]+)
我的要求:
{
"name":"${name}",
}
jmeter 发送 api 请求:
{
"name":"
RockyBhai
",
}
我期待:
{
"name":"RockyBhai",
}
解决方案
您所需要的只是一个模式,该模式将从被捕获为[^"]
匹配任何字符但"
(包括空格)的空格中修剪第 1 组中捕获的值。
您可以使用
FirstName\s*([^"]*[^"\s])
请参阅正则表达式演示。
细节
FirstName
- 一个字\s*
- 0 个或多个空格(这会修剪左侧的空格)([^"]*[^"\s])
- 捕获组 1:[^"]*
- 除了任何 0+ 字符"
[^"\s]
- ...直到最接近"
的不是空白的字符之前的最后一个字符(这会修剪右侧的空白)。
如果您打算仅在一行上匹配名称,请添加\n
到[^"]
否定字符类中,FirstName\s*([^"\n]*[^"\s])
.
推荐阅读
- html - RVEST 用于 HTML 文件中的日期
- r - R在同一张图表上绘制两个时间序列
- android-studio - 在 Android Studio 中永久显示“文件结构”窗口作为导航工具
- c - 从文件的多行读取 - 使用 Linux cat 在 c 中的 scanf
- python - discord.py - 将错误发布到 on_command_error
- javascript - Bootstrap 模态窗口不呈现模型验证错误
- c++ - 通过 C++ 中基类模板的多重继承解决重载歧义
- angular - Xh.Subject 不是构造函数 Angular 11
- python - 我怎样才能异步使用这个 Python-Node.js 串扰库,而方法不会触发每个请求的重复次数?
- mongodb - 查找在集合中至少拥有一个项目子集的用户数