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

引言

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

正则可视化

地址: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...

相关推荐
前端工作日常2 小时前
我学习到的Java 的 Service 分层:itf 和 impl 到底是什么?
java·后端
前端工作日常3 小时前
我学习到的JIT即时编译与机器码缓存失效
java·后端
犀利豆3 小时前
Claude Code Tools 研究系列(三)ExitPlanMode
人工智能·后端
星栈4 小时前
oh-my-pi工程级AI编码工使用体验
人工智能·后端·agent
立心者05 小时前
SpringBoot中使用TOTP实现MFA(多因素认证)
java·spring boot·后端
AskHarries6 小时前
SEO 页面怎么生成
后端
爱吃牛肉的大老虎6 小时前
Rust对象之结构体,枚举,特性
开发语言·后端·rust
石榴6 小时前
NestJS 的请求到底经过了什么:装饰器、守卫、拦截器、管道与中间件如何配合
后端
Gopher_HBo7 小时前
moby-client客户端
后端
杨运交7 小时前
[055][调度模块]Spring动态任务调度框架的设计与实现
java·后端·spring