Jmeter 正则表达式

一、Jmeter关联的方式:

  Jmeter中关联可以在需要获取数据的请求上 右键-->后置处理器 选择需要的关联方式,如下图有很多种方法可以提取动态变化数据:  

  

二、正则表达式提取器:

  1、比如需要提取如下响应文本中的 “<title>百度一下,你就知道</title>” 里面的 “百度一下,你就知道”:

  

  2、设置正则表达式提取器:

  

  说明:

  (1)引用名称:下一个请求要引用的参数名称,如填写title,则可用${title}引用它。

  (2)正则表达式:

    ():括起来的部分就是要提取的。

    .:匹配任何字符串。

    +:一次或多次。

    ?:不要太贪婪,在找到第一个匹配项后停止。

  (3)模板:用$$引用起来,如果在正则表达式中有多个正则表达式,则可以是$2$$3$等等,表示解析到的第几个值给title。如:$1$表示解析到的第1个值

  (4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0

  (5)缺省值:如果参数没有取得到值,那默认给一个值让它取。

  3、使用2中获取到的值:

  

三、关于正则表达式的举例说明:

  1、提取单个字符串:
    假如想匹配Web页面的如下部分:name = "file" value = "readme.txt">并提取readme.txt。一个合适的正则表达式:name = "file" value = "(.+?)">。
      ():封装了待返回的匹配字符串。
      .:匹配任何单个字符串。
      +:一次或多次。
      ?:不要太贪婪,在找到第一个匹配项后停止。

  2、提取多个字符串:
    假如想匹配Web页面的如下部分:name = "file.name" value = "readme.txt">并提取file.name和readme.txt。一个合适的正则表达式:name = "(.+?)" value = "(.+?)"。这样就会创建2个组,分别用于$1$和$2$

  比如:

    引用名称:MYREF
    模板:$1$$2$

   如下变量的值将会被设定:
    MYREF:     file.namereadme.txt
    MYREF_g0:   name = "file.name"value = "readme.txt"
    MYREF_g1:  file.name
    MYREF_g2:  readme.txt

  在需要引用地方可以通过:${MYREF}, ${MYREF_g1进行使用。

3、提取多个字符串:假如想匹配Web页面的如下部分:[{name = "file1.name" value = "readme1.txt"}{name = "file2.name" value = "readme2.txt"}]并提取file.name和readme.txt。一个合适的正则表达式:name = "(.+?)" value = "(.+?)"。这样就会创建2个组,分别用于$1$和$2$

 比如:

    引用名称:MYREF
    模板:$1$,$2$

   如下变量的值将会被设定:

  MYREF_1_g1=file1.name

  MYREF_2_g1=file2.name

  MYREF_1_g2=readme1.txt

  MYREF_2_g2=readme2.txt

时间: 2024-12-29 23:17:26

Jmeter 正则表达式的相关文章

转:详解JMeter正则表达式(1)

1.概览 JMeter中包含范本匹配软件Apache Jakarta ORO .在Jakarta网站上有一些关于它的文档,例如a summary of the pattern matching characters : http://jakarta.apache.org/oro/api/org/apache/oro/text/regex/package-summary.html. 另外,还有关于该软件老版本的文档OROMatcher User's guide ,也许会有一些帮助.URL地址:ht

jmeter正则表达式提取器--关联

http://desert3.iteye.com/blog/1394934 1.http://www.cnblogs.com/quange/archive/2010/06/11/1756260.html 2.http://blog.csdn.net/zhangren07/archive/2010/10/15/5944158.aspx <input type="hidden" name="hidName" value="(.*)">  

Jmeter正则表达式

Jmeter正则表达式 文章转自:http://www.cnblogs.com/jamesping/articles/2252675.html 正则表达式可以帮助我们更好的描述复杂的文本格式.一旦你描述清楚了这些格式,那你就可以利用它们对文本数据进行检索.替换.提取和修改操作. 下面有一个正则表达式的简单例子.第一步先要引入有关正则式的命名空间: using System.Text.RegularExpressions; 第二步就是用指定的正则式构建一个正则表达式对象,下面的正则式是用来搜索长度

Jmeter正则表达式提取器的使用方法(转)

下面简单介绍一下Jmeter正则表达式提取器的使用方法. 1.添加Jmeter正则表达式提取器:在具体的Request下添加Jmeter正则表达式提取器(Jmeter正则表达式在“后置处理器”下面)  例1如下: 引用名称: tokenid(自己定义) 正则表达式:<input type="hidden" name="org.apache.struts.taglib.html.TOKEN" value="(.*?)"> 模板:$1$

jmeter正则表达式提取 引用

jmeter正则表达式token提取 例: 添加正则 配置 token正则表达式:"token":"(.+?)" 模板:$1$ 添加信息头管理器进行配置 需要token得地方输入 ${token} 就可以了 如果获取 返回值 只有数字得 且不带 ""得 正则表达式:"sysId":([0-9]*?), 校验正则表达式可通过 请求值 进行校验 原文地址:https://www.cnblogs.com/wangyinghao/p/

Jmeter 正则表达式提取器详解(Regular Expression Exactor)

Jmeter 正则表达式提取器详解(Regular Expression Exactor) Name(名称):随意设置,最好有业务意义. Comments(注释):随意设置,可以为空 Apply to(应用范围): Main samples and sub-samples:匹配范围包括当前父取样器并覆盖至子取样器. Main samples only:只匹配当前父取样器 Sub-samples only:仅匹配子取样器 Jmeter Variable Name to use:支持对Jemter变

转:详解JMeter正则表达式(2)

例如, 引用名称:MYREF. 正则表达式:name="(.+?)" value="(.+?)". 模板:$1$$2$. 不要用/ /封装正则表达式. 如下变量的值将会被设定. MYREF: file.namereadme.txt. MYREF_g0: name="file.name" value="readme.txt". MYREF_g1: file.name. MYREF_g2: readme.txt. 这些变量后续可以

Jmeter正则表达式提取器详解

名称:次正则提取器的名称,最好取名唯一且有意义,为了方便与其他正则提取器区分. Apply to:应用范围 Main sample and sub_samples Main sample only Jmeter Variable 要检查的响应字段:样本数据来源 主体 Body(unescapad) Body as a Document 信息头 Request Headers URL 响应代码 响应信息 引用名称:这个根据你的喜好随便填写,没啥好讲的,只是在后面进行引用是需要的 正则表达式:这里填

JMeter 正则表达式提取器(二)

引用名:  引用此数据-别名 正则表达式:  取值 模板: 表示使用提取到的第几个值:$-1$:表示取所有值$0$:表示随机取值$1$:表示取第1个$2$:表示取第二个以此类推:$n$:表示取第n个 匹配数字(0随机) :0 代表随机取值,1 代表全部取值 缺省值 : 如果正则表达式没有搜找到值,则使用此缺省值 第二接口请求需要参数需要从上个接口获取,获取的是两个参数: 针对一个参数,可以这样取,画红框部分 正则表达式 "token":"(.+?)", ------