rgx 把 regex101 搬到了终端里。不用切到浏览器,就能实时测试正则、查看捕获组、调试替换逻辑。

项目概览

属性内容
GitHubbrevity1swos/rgx
Stars189
语言Rust
特点实时匹配、三引擎支持、捕获组可视化、替换模式
最后更新1天前

解决了什么问题

写正则的时候,你大概经历过这套流程:

  1. 在编辑器里写正则
  2. 发现不对劲
  3. 打开浏览器,切到 regex101
  4. 粘贴测试文本,调试
  5. 把修好的正则贴回编辑器

rgx 把这个循环压缩成一步:在终端里直接测。对于习惯在 Tmux 或终端 IDE 里工作的开发者,这种无缝体验省掉大量上下文切换。

核心功能

三引擎支持 同时支持 PCRE、JavaScript、Python 三种正则引擎。不同语言的语法差异(比如 \d\\d 的区别)在这里可以直观对比。

实时匹配反馈 输入正则的同时就能看到匹配结果,高亮显示命中部分。捕获组用不同颜色区分,一眼就能看出分组是否正确。

替换模式 不只是测试匹配,还能实时验证替换逻辑。s/old/new/g 的效果在输入时就能预览。

语法解释 把正则翻译成自然语言描述。^\d{3}-\d{4}$ 会显示为 “Start of string, three digits…”,对复杂正则尤其实用。

鼠标支持 虽然是 TUI 应用,但支持鼠标点击选择、滚轮翻页。不想记快捷键也能顺手用。

安装

# 通过 cargo 安装
cargo install rgx

# 或下载预编译二进制
curl -sSL https://github.com/brevity1swos/rgx/releases/latest | grep "rgx-.*-x86_64" | head -1

使用示例

启动后直接输入正则:

rgx

界面分为三栏:上方输入正则,左下输入测试文本,右下实时显示匹配结果和捕获组。

Tab 切换引擎,Ctrl+R 进入替换模式,Ctrl+Z 撤销修改。

对比类似工具

工具运行环境特点
regex101.com浏览器功能最全,有调试器
ripgrepCLI搜索工具,非交互式
rgx终端 TUI实时交互,无需浏览器

如果你大部分时间在终端工作,rgx 的流畅度明显优于浏览器方案。

适用场景

  • 快速验证从 StackOverflow 复制来的正则
  • 调试日志提取规则
  • 学习正则语法(配合自然语言解释)
  • 编写复杂的文本处理脚本前先做原型验证

局限

  • 不支持 regex101 的 Debugger 逐步执行功能
  • 正则历史记录不会持久化
  • 需要终端支持 256 色才能看到完整高亮效果

总结

rgx 不是第一个终端正则工具,但它在交互细节上做得足够好:实时反馈、鼠标支持、多引擎切换。对于每天和正则打交道的前端/后端开发者,这是一个值得常驻终端的小工具。


属性内容
仓库https://github.com/brevity1swos/rgx
许可证MIT
语言Rust
维护者@brevity1swos