jmeter:正则表达式的使⽤
Jmeter中正则关联的使⽤是可以提取动态变化数据进⾏传递:关联的⽅式和提取器有多种,这篇先讲解正则表达式怎么来关联(?)在需要获取数据的http请求上添加后置处理器
⽐如提取百度title值:
正则表达式的写法:
说明:
(1)引⽤名称:下⼀个请求要引⽤的参数名称,如填写title,则可⽤${title}引⽤它。
(2)正则表达式:
():括起来的部分就是要提取的。
.:匹配任何字符串。
+:⼀次或多次。
?:不要太贪婪,在到第⼀个匹配项后停⽌。
(3)模板:⽤$$引⽤起来,$1$表⽰解析到的第1个值
(4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0
(5)缺省值:如果参数没有取得到值,那默认给⼀个值让它取。
给下个请求引⽤这个变量就可以了
正则表达式:主要就是:左边界(.*?)右边界,左右边界就是为了能准确定位到想匹配的内容,(.*?) 是替换了想要提取的内容
⾥⾯的'?'为⾮贪婪匹配,(⾮贪婪模式就是说在遇到第⼀个右边界后就停⽌匹配,这样就可以精确拿到想要的内容)
模板:对应正则表达式提取器类型,样式为:$n$,
若模板为:$0$,则为整个表达式匹配到的内容,就是包括⼩括号内跟⼩括号外的内容
若模板为:$1$,则对应正则表达式中的第⼀个(.*?)所匹配的内容,
若模板为:$2$,则对应正则表达式中的第⼆个(.*?)所匹配的内容,
正则匹配解析若模板为$1$$2$,则把2个(.*?)所匹配的内容拼接起来,
匹配数字:正则表达式匹配数据的最终结果可以看做⼀个数组,匹配数字即可看做是数组的第⼏个元素。
当为 0 时,随机返回匹配的数据
当为 1 时,表⽰返回匹配结果数组的第⼀个元素。当为负数(-1,-2,-99都可以)时,表⽰返回全部元素,并且同时会返回⼀个元素总数的变量如sessid,在引⽤时:通过${sessid_1}的⽅式来取第1个匹配的内容,${sessid_2}来取第2个匹
配的内容。
缺省值:匹配失败时的默认值。通常⽤于后续的逻辑判断
你们⾃⼰试试吧
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论