正则表达式 – 在线工具汇总

  • 工具一:可视化理解正则
  • 工具二:在线测试正则
  • 工具三:Regexr

该工具主要帮助你理解你的正则表达式

  • 正则表达式工具-Regulex
  • 地址:https://jex.im/regulex/#!flags=&re=%5E(a%7Cb)*%3F%24
  • 正浮点数 为例子:^[1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*|0?\\.0+|0$, 你将可以非常直观的看到它的流程:

该工具主要用于在线测试你写的正则是否有效

  • 正则表达式工具-在线测试
  • 地址:https://c.runoob.com/front-end/854/

综合上述两者,不过速度有点慢

  • 正则表达式工具-Regulex
  • 地址:https://regexr.com/

jmeter(十五)-正则表达式提取器

sampler请求的服务器响应结果中通过正则表达式提取值所需值,生成模板字符串,并将结果存储到给定的变量名中。

界面如下:

正则表达式提取器界面

  • Apply to:作用范围(返回内容的断言范围)

1)Main sample and sub-samples:作用于主节点的取样器及对应子节点的取样器

2)Main sample only:仅作用于主节点的取样器

3)Sub-samples only:仅作用于子节点的取样器

4)JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称),从指定变量值中提取需要的值。

  • Field to check:要检查的响应报文的范围

1)主体:响应报文的主体,最常用

2)Body(unescaped):主体,是替换了所有的html转义符的响应主体内容,注意html转义符处理时不考虑上下文,因此可能有不正确的转换,不建议使用

3)Body as a Document:从不同类型的文件中提取文本,注意这个选项比较影响性能

4)Response Headers(信息头):响应信息头(

5)Request Headers:请求信息头

6)URL:请求url

7)Response Code(响应代码):响应状态码,比如200、404等

8)Response Message(响应信息):响应信息

  • 引用名称(Names of created variables):

Jmeter变量的名称,存储提取的结果;即下个请求需要引用方法是${变量名}。

  • 正则表达式(Regular Expression):

使用正则表达式解析响应结果,()括号表示提取字符串中的部分值,前后是提取的边界内容。

常用正则表达式:(.*?)表示匹配任意长度的任意字符,是最常用的正则表达式,基本能满足80%场景要求

  • 模板(Template):

正则表达式的提取模式。如果正则表达式有多个提取结果,则结果是数组形式,模板$1$,$2$等等,表示把解析到的第几个值赋给变量;从1开始匹配,以此类推。

若只有一个结果,则只能是$1$;有多个结果,可以使用$1$2$方式取2个值。

  • 匹配数字(Match No.(0 for Random)):

正则表达式匹配数据的结果可以看作一个数组,表示如何取值:

1)0代表随机取值,默认

2)正数n表示取第n个值,(1:第一个值

3)负数表示提取所有符合条件的值,(-1:所有

  • 缺省值(Default Value):

匹配不到值的时,取该值;

  • 使用空默认值(Use empty default value):

勾选后,提取不到值时,则返回空字符串。

1)主体(body)

2)Response Headers(信息头)

3)Request Headers:请求信息头

4)URL

5)Response Code(响应代码)和Response Message(响应信息)

正则表达式提取器如下:

测试结果:

调试取样器

使用变量,也可以通过变量名_g直接进行提取,如下:

正则表达式提取器

测试结果:

正式表达式:

备注:多个模板( $1$2$ )的时候,可以用空格、, 、. 、 – 连接模板

测试结果:

备注:在调试过程中可结果察看结果树和Debug sample来帮助分析结果。

RegExr.com:强大正则表达式在线构建、学习工具!

家好,很高兴又见面了,我是\”高级前端‬进阶‬\”,由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力。

RegExr is a HTML/JS based tool for creating, testing, and learning about Regular Expressions.

RegExr.com 是一个用于学习、构建和测试正则表达式的在线工具,由 Grant Skinner 和 gskinner.com 的优秀人员创建的。

RegExr 的典型特征包括:

  • 正则表达式匹配结果会在用户输入时实时更新,从而及时反馈给用户
  • 支持 JavaScript 和 PHP/PCRE等多语言 RegEx
  • 滚动匹配或表达式以查看详细信息,给用户最好的体验
  • 保存并与他人共享表达式,利于多方协同操作
  • 在编辑器中使用 cmd-Z/Y 撤消和重做,防止工作丢失

目前 RegExr 在 Github 通过 GPL-3.0 协议开源,有超过 10k 的 star,1k 的 fork、是一个值得关注的前端开源项目。

  • 此版本的 RegExr 使用 GPL v3 许可协议,如果使用者有兴趣根据其他条款使用该源,可以随时与官方联系
  • RegExr 使用 Gulp 来管理构建过程,开发者需要安装 Node 和 Gulp,并通过 npm install 安装其他依赖项。运行 gulp (默认)将运行开发版本并设置测试服务器
  • 如果想向 RegExr.com反馈,可以发送 pull 请求,同时需要确保格式正确并遵循现有文件中指定的样式。

更多关于 RegExr 的用法和示例可以参考文末资料,本文不再过多展开。

https://github.com/gskinner/regexr?tab=readme-ov-file

https://www.bypeople.com/regular-expressions-creation-online-tool/

Regex Part 2

https://www.hongkiat.com/blog/regular-expression-tools-resources/

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。