regex - 用于 HTTP 请求的 jmeter 正则表达式
问题描述
我正在尝试在使用 1 个脚本时在 jmeter 中构建正则表达式。
上一个 HTTP 请求中的响应如下所示:
<form accept-charset="UTF-8" action="/start" class="simple_form form-horizontal" id="new_challenger" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /><input name="authenticity_token" type="hidden" value="JvOxXp/rtZ2dTOVzWqcbQENOHD7Qknws7CMy47L3RC0=" /></div><input id="challenger_step_id" name="challenger[step_id]" type="hidden" value="cEVWeUZHc3ZnSGR6dlhrSnRhd3ZLdz09LS1rOTlFS0crYitObmFMT0pOcXJ2MVZBPT0=--2baa3ff87227212cff656c4db1040680ff78ff3f" />
<input id="challenger_step_number" name="challenger[step_number]" type="hidden" value="1" />
<input class="btn btn-xl btn-default" name="commit" type="submit" value="Start" />
</form>
我需要提取*_step_id
iechallenger_step_id
cEVWeUZHc3ZnSGR6dlhrSnRhd3ZLdz09LS1rOTlFS0crYitObmFMT0pOcXJ2MVZBPT0=--2baa3ff87227212cff656c4db1040680ff78ff3f
我尝试了下面的正则表达式,但是当我在结果树视图中的正则表达式测试器中进行测试时,它没有给我任何结果。
使用的正则表达式:
challenger[step_id]" type="hidden" value=(.+?) /><input id.
它是因为“--”字符还是其他原因而发生的?
需要一些帮助。
谢谢,苏霍吉特
解决方案
使用正则表达式解析 html是个坏主意。
但是,如果出于某种原因您必须在任务中使用正则表达式,请使用如下模式:
<input[^>]+id="([^"]+)_step_id"[^>]+value="([^"]*)"[^>]*>
您可能需要转义(使用\
)一些特殊字符,这取决于您如何在源代码中使用正则表达式模式。
推荐阅读
- sql - 查询从 PostgreSQL 表中获取过去 15 天的详细信息
- css - 文本超出容器时将字体缩放到大小?
- object-detection - YOLO darknet retrain 甚至没有开始说它在某些 *labels* 目录中找不到 *.txt
- python - 将两个在不同语料库上从零开始训练的 BERT 模型组合成一个模型的方法?
- javascript - 如何使用 ESLint 在 JS 或 TS 中检测本地类与全局类的名称冲突?
- aws-amplify - Can I have any way to import module about aws-export.js?
- php - php ajax multiple dropdown pagination
- spring - How to access datasource information in spring boot with spring data jpa and hibernate
- html - Rotating image gallery
- spring-boot - EJB Corba Marshalling Exception