json
格式,那么优先选用json
提取器。url
、请求里面的某个参数、请求的头部内容)、响应的头部内容、或者响应体格式非json
格式,这个时候优先选择用正则提取器。;
作为分割符。
此时,一定要写默认值(default value)
,否则就会报错。.*?
====除换行符不能匹配,其它的都能匹配。.
匹配除换行符以外的所有字符(包括中文、韩文、日文等)。+
匹配1次或多次(至少要匹配一次)。\d
相当于[0-9]
,来匹配数字的。加上+
,是至少要匹配一个的意思。\w
相当于[a-zA-Z0-9_]
,来匹配英文字母和数字的字符串。[]
{}
有特殊的用途。(.*?)
绝大多数的正则表达式都是基于perl
语言的,所以大多数语言里面的正则表达式都是通用的。
但是也存在一定的差异,比如java
和python
语言里面的正则表达式就有一些差异。
现在讲的是基于perl
语言的正则表达式,所以这个和java
中的正则表达式是一样的。
这个基于perl
语言的正则表达式和python
语言里面的正则表达式有些小区别。
参考文章:高级性能测试系列《14.响应的提取--json提取器:一个json提取器写多个提取式、正则提取器:万能正则式怎么用?》,更正该文章结尾的最后2行常用正则式为:\d \d+
[0-9]+
和\w\w+
英文字母或数字的字符串
。
url
地址里面提取所需的请求的参数值:http请求
配置正则表达式提取器
type=(.*?)&
成功提取请求的参数值
注意: 写正则表达式的时候,英文双引号可别标反了。" "
正则表达式:gqid":"(.*?)"(.*?)token":"(.*?)"
模板:13
匹配数字是0,意思是随机取了1个
运行结果
运行结果
1代表g1,3代表g3。
写多个的时候,模版中间的$
不能少。
检查响应字段
例1:正则表达式中引用响应数据中的变量名称;匹配数字是-1,意思是取所有的值
正则表达式:id":(\d+),(.*?)typeDesc":"(.*?)"
例1:运行结果
例2
例2:运行结果
用notepad++打开代码文件,使用正则表达式进行匹配。
要选择正则表达式哦
所以,正则表达式不局限于jmeter
中使用。
链接:https://pan.baidu.com/s/1G7HRDSfrk8Y25ltzO2CiEg?pwd=1234 提取码:1234