jmeter正则表达式忽略空格和新行

时间:2016-08-29 21:13:12

标签: regex jmeter

我有一个在Response数据中返回以下内容的采样器:

for API key "fmgflanjs", use API key secret:

  afgthgdsf

Note that it's norm

在jmeter中,我现在试图在此响应数据上使用这样的正则表达式提取变量键(在引号中但不包括引号)和secret(在第2行)。但到目前为止还未能让它发挥作用。任何帮助深表感谢。

对于密钥,我尝试了这个正则表达式:密钥(?s)"(。*?)"

对于这个秘密,我尝试了这个正则表达式:secret :(?s)(。*?)(?s)注意

1 个答案:

答案 0 :(得分:3)

关键:

Regular Expression: "([^"]*)"
Template: $1$
Match No: 1

正则表达式意味着:捕获一个组(在括号中),即两个双引号之间。该组可以包含除双引号之外的任何字符

对于秘密:

Regular Expression: secret:[\s]*(.*)[\s]*Note
Template: $1$
Match No: 1

正则表达式意味着:捕获一个组(在括号中),即两个可选的空格集之间,前面是'secret:',后跟'Note'

或者你可以同时

Reference name: key
Regular Expression: for API key "(.*)", use API key secret:[\s]*(.*)[\s]*Note that it's norm
Template: $1$

由于正则表达式选择了多个组,因此JMeter将创建多个名称跟随模板refname_gN的变量,因此在我们的案例中:

key_g1
key_g2