之前在配置时都是本地起一个nginx服务,修改location规则,然后nginx -s reload 或则 service nginx reload不断尝试来判断是否符合预期。显而易见,效率极低。使用一些在线正则表达式测试(e.g. 在线工具)又因为使用的库不同,多少存在差异。

正则表达式有不同的规则引擎,具体参见 wikipedia的 Comparison of regular expression engines

nginx使用的是PCRE

截取nginx官方文档 Building nginx from Sources

--with-pcre=path — sets the path to the sources of the PCRE library. The library distribution (version 4.4 — 8.40) needs to be downloaded from the PCRE site and extracted. The rest is done by nginx’s ./configure and make. The library is required for regular expressions support in the location directive and for the ngx_http_rewrite_module module.

建议使用linux下的 grep 工具

windows可以使用cygwin 或者git for windows中的git-bash.exe

$ grep --help# ...Regexp selection and interpretation:-E, --extended-regexp     PATTERN is an extended regular expression (ERE)-F, --fixed-strings       PATTERN is a set of newline-separated strings-G, --basic-regexp        PATTERN is a basic regular expression (BRE)-P, --perl-regexp         PATTERN is a Perl regular expression-e, --regexp=PATTERN      use PATTERN for matching-f, --file=FILE           obtain PATTERN from FILE-i, --ignore-case         ignore case distinctions-w, --word-regexp         force PATTERN to match only whole words-x, --line-regexp         force PATTERN to match only whole lines-z, --null-data           a data line ends in 0 byte, not newline# ...复制代码

使用 grep -P命令即可

$ echo 'a.gif' | grep -P '\.(jp?g|gif|bmp|png)'#输出
a.gif复制代码

如果只想输出匹配部分,则加上-o参数

$ echo 'a.gif' | grep -P -o '\.(jp?g|gif|bmp|png)'#输出
.gif复制代码

具体 perl 正则表达式语法,可参考

Perl regular expressions man page

汤姆的猫-Perl入门(四)Perl的正则表达式

博客 anjia.ml/2017/06/29/…
简书 www.jianshu.com/p/17eb0ba22…
掘金 juejin.im/post/5954ad…

nginx正则表达式快捷测试方法相关推荐

  1. Nginx正则表达式之匹配操作符详解

    2019独角兽企业重金招聘Python工程师标准>>> Nginx正则表达式之匹配操作符详解 nginx可以在配置文件中对某些内置变量进行判断,从而实现某些功能.例如:防止rewri ...

  2. Nginx正则表达式locationrewrite

    Nginx正则表达式&&location&&rewrite 前言 一.Nginx中的正则表达式 1.1 常用的Nginx 正则表达式 二.访问路由location 2. ...

  3. Nginx正则表达式与location匹配简介

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.nginx rewrite概述 1.概述 2. 跳转场景​ 3. 跳转实现 4. rewrite实际场景 二.nginx ...

  4. nginx 学习笔记--Nginx正则表达式之匹配操作符

    nginx可以在配置文件中对连接进行判断,已达到防止rewrite.盗链.对静态资源设置缓存以及浏览器限制等目的: 字符串表达式支持正则表达式,能设定大小写是否敏感. 1.~为区分大小写的匹配. 2. ...

  5. nginx正则表达式

    location = / { # 只匹配"/". [ configuration A ] } location / { # 匹配任何请求,因为所有请求都是以"/" ...

  6. Nginx之正则表达式、location匹配简介以及rewrite重写

    目录 一.Nginx 正则表达式 二.location 匹配简介 1.匹配规则格式 ①.精准匹配 ②.一般匹配 ③.正则匹配 2.常用的匹配规则 3.匹配的优先级 4.示例 5.实际网站使用中,至少有 ...

  7. Nginx Rewrite +正则表达式

    目录 前言 一.Nginx Rewrite概述 1. Rewrite 跳转场景 2. Rewrite 跳转实现 3. Rewrite 实际场景 二.Nginx 正则表达式 1. 常见的正则表达式元字符 ...

  8. Nginx Rewrite 正则表达式

    文章目录 前言 一.Nginx Rewrite概述 1.Rewrite 场景 2.Rewrite 实现 3. Rewrite 实际场景 3.1 Nginx 跳转需求的实现方式 3.2 rewrite ...

  9. 第二章 OpenResty(Nginx+Lua)开发入门

    Nginx入门 本文目的是学习Nginx+Lua开发,对于Nginx基本知识可以参考如下文章: nginx启动.关闭.重启 http://www.cnblogs.com/derekchen/archi ...

最新文章

  1. 用 PHP 调用 MySQL 存储过程
  2. OCS 企业版图解详细部署
  3. 功能测试话题分享-0323
  4. nginx-rtmp message
  5. powerdesigner奇淫技
  6. Leetcode1143. 最长公共子序列(c#)
  7. 2018年Java展望
  8. azure云数据库_在Azure SQL数据库中配置电子邮件通知
  9. 我在阿里云玩蟹科技分享篇
  10. 初识iptables规则
  11. 删除专利模板文件的最后一页(WPS亲测可用)
  12. 大学加权平均分计算器_澳大利亚移民宝藏专业----西澳大学幼教硕士解析
  13. VBA 对 range() 或 cells() 的内容格式的修改, 如 range.address(0,0) cells().formulaR1C1
  14. 数据科学家:大器晚成,是软件工程师成功的唯一捷径
  15. Android 高级开发 JNI NDK 介绍与使用
  16. python之excel处理画图
  17. 618有哪些数码产品值得入手?盘点值得入的数码好物推荐
  18. linux 文件夹 775,linux - 如何为文件夹及其所有子文件夹和文件设置chmod?
  19. 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 待补
  20. 国际会议及期刊星级说明

热门文章

  1. P2905 [USACO08OPEN]农场危机Crisis on the Farm-dp
  2. 电商平台数据查询工具(京东数据分析软件)
  3. 原型设计工具——“墨刀”的介绍与基本教程
  4. 编程求一个9位的整数,数字由1-9构成,每个数字只能出现一次。并且这个整数的前一位能被1整除,前两位能被2整除, ......以此类推,前九位能被9整除。
  5. [0CTF 2016]piapiapia php反序列化字符串逃逸
  6. Sitecore学习总结(1)
  7. 【正点原子MP157连载】第二十三章 Linux设备树-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7
  8. C#控件篇 - 图表控件chart - 添加辅助边界线条
  9. Chapter 5 (Eigenvalues and Eigenvectors): The characteristic equation (特征方程)
  10. php搭建markdown云笔记_Typora+坚果云:支持markdown的云笔记搭建