什么时间用正则表达式什么时间用json提取器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么时间用正则表达式什么时间用json提取器相关的知识,希望对你有一定的参考价值。

参考技术A 在进行全局搜索,查找匹配的时候使用正则。需要提取返回值做为参数的时候用json提取器。
在查找文件中电话号码,邮箱,ip地址等的时候需要使用正则。
JSON提取器应用的场景是针对发送请求后返回值是JSON格式,这个时候如果需要提取返回值做为参数,使用RegularExpressionExtractor正则就无法获取到我们需要的值。原因就是JSON格式是层层嵌套,RegularExpressionExtractor只能拿到最外层数据,这个时候就必须使用JSON提取器来拿到我们需要的值。

十Jmeter 关联-正则表达式提取器

正则表达式提取器在在网页和json中都可以用(复杂JSON提取最好还是用JsonPath),提取完参数后,相当于把参数以key-value的形式放到参数池,以便后面的请求使用。
注意:不能超前引用,即在定义前就进行参数化

实战

在请求的子节点下添加后置处理器正则表达式提取器,如下源文件

 

技术图片
 

 

正则表达式:<a class="postTitle2" href="(.*?)">,获取到所有随笔的URL

技术图片
 

 

获取下标题,只要把表达式改成:<a class="postTitle2" href=".*?"> *(.*?) *</a>

技术图片
 

 

一般来说,掌握.*? 能解决80%的提取。
正则表达式简单介绍:

  • ():小括号中代表想要提取出来的
  • .:匹配换行符以外的任何字符
  • *:匹配前一个字符零次或几次
  • ?:匹配前一个字符零次或一次
  • d:与一个数字字符匹配。等价于[0-9]

关于正则语法,我已经写了一篇文章,详细介绍正则表达式的使用。
至于正则表达式提取器的使用,在基本元件介绍中已经详细介绍。

以上是关于什么时间用正则表达式什么时间用json提取器的主要内容,如果未能解决你的问题,请参考以下文章

十Jmeter 关联-正则表达式提取器

使用正则表达式从文件中提取 JSON 键值映射

提取登录的Token值两种方法之正则表达式和Json提取器

jmeter用一个正则提取器提取多个值的两种方法

Jmeter系列(27)- 详解正则提取器

软件测试技能,JMeter压力测试教程,正则表达式提取