这款正则表达式可视化神器,让复杂正则一目了然!

引言

大家好,今天分享一个可视化正则表达式的网站,可以更加清晰的调试正则表达式,方便大家应对那种没有注释并且看不懂的正则。

正则可视化

地址:jex.im/regulex/#!f...

Github 地址:github.com/CJex/regule...

来看看效果,网站自带的正则可视化效果:

从图片中可以很清楚的看出来,这个正则使用了一个捕获组,匹配字符 a 或者 b 中的任意一个,而后面的 *? 则会让正则尽可能是的匹配字符,体现在图中就是 0 or more times,很简单的一张图,但是却清晰的展示了正则的含义。

我们再找一个复杂一些的正则试试:

很清晰,对吧,一看就能看到三种字符,可以循环 4-16 次。

但是这个项目是六年前的项目了,像反向否定预查((?<=Y)X)这种语法目前是不支持的,不过我找了一下 issues,发现有人新增了语法支持,地址:jianyu.io/regulex/

我们来尝试一下 IP 地址匹配的正则:

这个正则还是比较复杂的,从图上可以看出来,正则一共分为几个部分,首尾都不能是数字或者点,中间部分通过次数限制匹配 255,或者 225 或者 192 这种的 IP 地址,涵盖了 ABC 类 IP 地址。

再来看一个负的浮点数正则:

一目了然,一共有三个分组,分别对应三种情况,这里我就不多解释了。

正则调试

顺便这里再分享一个调试正则表达式的网站,也是我平时调试正则常用的。

地址:regex101.com/

它长这样:

它支持多种语言的正则表达式调试,同时支持多种模式,也会高亮字符串中匹配到的内容,方便我们调试正则。

看一个 IP 地址的示例:

不仅在结果中会高亮对应的字符,也会在正则中高亮对应的部分,提示我们哪部分正则匹配到了内容,并且右侧还有友好的提示,如果我们忘记或者不知道如何匹配可以作为参考。

总结

虽然现在写爬虫很少用到正则了,不过有的时候还是偶尔会用来搜索文件或者使用 notepad++ 来批量替换内容,速度杠杠的,也可以用在字符串处理中,或者日志处理,使用起来效率很高,速度飞快!

本文章首发于个人博客 LLLibra146's blog

本文作者:LLLibra146

更多文章请关注公众号 (LLLibra146)

版权声明 :本博客所有文章除特别声明外,均采用 © BY-NC-ND 许可协议。非商用转载请注明出处!严禁商业转载!

本文链接blog.d77.xyz/archives/73...

相关推荐
Piper蛋窝3 小时前
深入 Go 语言垃圾回收:从原理到内建类型 Slice、Map 的陷阱以及为何需要 strings.Builder
后端·go
六毛的毛5 小时前
Springboot开发常见注解一览
java·spring boot·后端
AntBlack5 小时前
拖了五个月 ,不当韭菜体验版算是正式发布了
前端·后端·python
31535669135 小时前
一个简单的脚本,让pdf开启夜间模式
前端·后端
uzong6 小时前
curl案例讲解
后端
一只叫煤球的猫6 小时前
真实事故复盘:Redis分布式锁居然失效了?公司十年老程序员踩的坑
java·redis·后端
大鸡腿同学7 小时前
身弱武修法:玄之又玄,奇妙之门
后端
轻语呢喃9 小时前
JavaScript :字符串模板——优雅编程的基石
前端·javascript·后端
MikeWe9 小时前
Paddle张量操作全解析:从基础创建到高级应用
后端
岫珩9 小时前
Ubuntu系统关闭防火墙的正确方式
后端