如何从 jmeter 中的 javascript 中提取 id?
how to extract an id from a javascript in jmeter?
我在从 javascript 中的请求中提取 ID 时遇到问题。让我解释一下,虽然我已经作为 post 处理器插入了一个具有以下正则表达式的正则表达式提取器:(? <= Store_id :) \ d,但不会提取值。然而,奇怪的是,当我在视图结果树搜索中使用这个表达式时,这似乎有效,搜索找到了我需要的值,你能告诉我我哪里错了吗?
JS中正则表达式默认区分大小写。试试这个:
(?<=store_id:)\d+
我用 \d+
替换了 \d
因为 ID 可能不止一位。如果不是这种情况,您可以使用 \d
.
您需要将您想要的值用括号括起来:
store_id:(\d+)
试试这样的东西:
{store_id\s*:\s*(\d+)
其中:
\s*
- 可选的空格数
\d+
- 任意位数
()
- 分组
有关详细信息,请参阅 Regular Expressions 用户手册章节
如果您在提出正确的正则表达式时遇到问题,或者您可以选择边界提取器,它基本上提取左右边界之间的所有内容,它消耗的资源更少,工作速度更快。更多信息:The Boundary Extractor vs. the Regular Expression Extractor in JMeter
我在从 javascript 中的请求中提取 ID 时遇到问题。让我解释一下,虽然我已经作为 post 处理器插入了一个具有以下正则表达式的正则表达式提取器:(? <= Store_id :) \ d,但不会提取值。然而,奇怪的是,当我在视图结果树搜索中使用这个表达式时,这似乎有效,搜索找到了我需要的值,你能告诉我我哪里错了吗?
JS中正则表达式默认区分大小写。试试这个:
(?<=store_id:)\d+
我用 \d+
替换了 \d
因为 ID 可能不止一位。如果不是这种情况,您可以使用 \d
.
您需要将您想要的值用括号括起来:
store_id:(\d+)
试试这样的东西:
{store_id\s*:\s*(\d+)
其中:
\s*
- 可选的空格数\d+
- 任意位数()
- 分组
有关详细信息,请参阅 Regular Expressions 用户手册章节
如果您在提出正确的正则表达式时遇到问题,或者您可以选择边界提取器,它基本上提取左右边界之间的所有内容,它消耗的资源更少,工作速度更快。更多信息:The Boundary Extractor vs. the Regular Expression Extractor in JMeter