在使用正则表达式提取器时,书中仅仅介绍了最基础的使用,即单模版单数据的时候,但是多模版多数据,单模版多数据,单模版多数据的情况却没有介绍,现在记录一下使用正则表达式提取器时遇到的各个情况下数据如何提取。
0 正则表达式提取器的属性介绍
说明一下正则表达式提取器的各项属性。
引用名称:提取出来的数据,在之后进行引用时的变量名称,如图引用名称设置为 moudleId,之后使用$引用。
正则表达式:这个不用多说,提取数据时需要用到的表达式。可以提取多组(表达式中包含多组括号)或者单组数据(表达式中包含一对括号),图中表达式只包含了单组括号,所以仅会取一列值(可能包含多个数据)。
模版:这里就是告诉 JMeter 要匹配哪个或者那些模版, $1$ 标识匹配第一个列数据,以此类推。
匹配数字:告诉 JMeter 如何匹配到了多个符合要求的,要选取哪一个数据。0-表示随机,-1-表示全部,1-表达第一个,2-表示第二个。
缺省值:没有匹配到数据时,选取的默认值。
以上就是正则表达式提取器的一些属性。下面介绍一下不同情况下的取值方式。
1 单模版单数据
最简单的单模版单数据。单模版单数据即,匹配的数据中,正则表达式仅能匹配到唯一的一个值,那么直接简单的引用变量 $ 即可。
2 单模版多数据
单模版多数据的情况要复杂一些,单模版单数据是指正则表达式中,仅仅取一组数据,但是在被匹配的数据中,有多组数据符合条件。在这种情况下,如果在匹配数字中,选择全部数据, 那么可以通过 $ 的方式获取数据。
$ 表示第一个数据
$ 表示第二个数据
$ 表示第三个数据
3 多模版单数据
多模版单数据指的是,在正则表达式中有两个需要获取匹配数据的地方,而源文本仅有唯一的两组数据能被匹配。由于匹配到了两列数据,在获取数据时,需要告诉 JMeter 我们需要引导哪一组数据,可以通过 $ 形式进行引用。
$ 表示第一列数据
$ 表示第二列数据
4 多模版多数据
多模版多数据即,源文本中匹配的多列数据,每一列都有多组值。可以通过 $的方式进行引用。
$ 表示第一组数据第一列的值
$ 表示第一组数据第二列的值
领取专属 10元无门槛券
私享最新 技术干货