网站首页 > java教程 正文
正则表达式提取器(Regular Expression Extractor)
sampler请求的服务器响应结果中通过正则表达式提取值所需值,生成模板字符串,并将结果存储到给定的变量名中。
界面如下:
- Apply to:作用范围(返回内容的断言范围)
1)Main sample and sub-samples:作用于主节点的取样器及对应子节点的取样器
2)Main sample only:仅作用于主节点的取样器
3)Sub-samples only:仅作用于子节点的取样器
4)JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称),从指定变量值中提取需要的值。
- Field to check:要检查的响应报文的范围
1)主体:响应报文的主体,最常用
2)Body(unescaped):主体,是替换了所有的html转义符的响应主体内容,注意html转义符处理时不考虑上下文,因此可能有不正确的转换,不建议使用
3)Body as a Document:从不同类型的文件中提取文本,注意这个选项比较影响性能
4)Response Headers(信息头):响应信息头(
5)Request Headers:请求信息头
6)URL:请求url
7)Response Code(响应代码):响应状态码,比如200、404等
8)Response Message(响应信息):响应信息
- 引用名称(Names of created variables):
Jmeter变量的名称,存储提取的结果;即下个请求需要引用方法是${变量名}。
- 正则表达式(Regular Expression):
使用正则表达式解析响应结果,()括号表示提取字符串中的部分值,前后是提取的边界内容。
常用正则表达式:(.*?)表示匹配任意长度的任意字符,是最常用的正则表达式,基本能满足80%场景要求
- 模板(Template):
正则表达式的提取模式。如果正则表达式有多个提取结果,则结果是数组形式,模板$1$,$2$等等,表示把解析到的第几个值赋给变量;从1开始匹配,以此类推。
若只有一个结果,则只能是$1$;有多个结果,可以使用$1$2$方式取2个值。
- 匹配数字(Match No.(0 for Random)):
正则表达式匹配数据的结果可以看作一个数组,表示如何取值:
1)0代表随机取值,默认
2)正数n表示取第n个值,(1:第一个值 )
3)负数表示提取所有符合条件的值,(-1:所有)
- 缺省值(Default Value):
匹配不到值的时,取该值;
- 使用空默认值(Use empty default value):
勾选后,提取不到值时,则返回空字符串。
Field to check 详细样例
1)主体(body)
2)Response Headers(信息头)
3)Request Headers:请求信息头
4)URL
5)Response Code(响应代码)和Response Message(响应信息)
提取某个特定的值的例子
正则表达式提取器如下:
测试结果:
调试取样器
使用变量,也可以通过变量名_g直接进行提取,如下:
一条正则表达式匹配多个值
正则表达式提取器
测试结果:
1.1.1.4. 一条正则表达式有多个匹配值
正式表达式:
备注:多个模板( $1$2$ )的时候,可以用空格、, 、. 、 - 连接模板
测试结果:
备注:在调试过程中可结果察看结果树和Debug sample来帮助分析结果。
猜你喜欢
- 2025-09-24 30个Excel/WPS新公式实战大全,效率翻倍不是梦!
- 2025-09-24 Ngnix的server_name正则匹配执行顺序
- 2025-09-24 学习VBA,报表做到飞 第四章 正则表达式 4.12 正则表达式与数组结合
- 2025-09-24 用正则表达式解代数方程_用正则表达式解代数方程怎么写
- 2025-09-24 Django路由配置方法全解_请简述django的url路由流程
- 2025-09-24 这几种正则表达式的“字符集合”,想要入门regexp函数,必须了解
- 2025-09-24 玩转Spring中强大的spel表达式!_spring的scope有几种
- 2025-09-24 Python中使用正则表达式_python 正则表达
- 2025-09-24 Python 正则表达式教程 第 4 章:贪婪与非贪婪匹配
- 2025-09-24 5分钟掌握Python(十六)之正则表达式
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)