Regulex:JavaScript Regular Expression Visualizer

Regulex是一个将JS正则表达式图形化的小工具。这个项目真是无心插柳柳成荫,本来只是随手写的烂代码,积累多了又舍不得删掉,就包装了一个GUI做成了这个工具,没想到这么受欢迎,在 Github 上已经有3000多个Star了。

正则表达式可视化

搜索一下发现这类工具其实已经有了不少,比如RegexperDebuggex。其中Debuggex作为一个商业产品,功能确实强大,支持PCRE等多种正则表达式语法,而Regulex只支持JavaScript正则式语法。不过之所以我仍然要做这个工具,无非是因为它们还有一些缺陷:

此外,Regulex还有些小优点,比如可通过IFrame将图嵌入到自己的网站上、还有鼠标拖动浏览等等。事实上一开始我有一个更远的计划:Tracer,它可以直接显示出正则式进行文本匹配时所经过的路径,这样你就可以直观看到正则式各部分所匹配到的内容,还有哪些分支失败了,哪些分支成功了,这对Debug会有很大的帮助。本来我已经顺便实现了一个简单的正则表达式引擎,如果仅仅是为了实现正则表达式解析,根本不需要这么多代码。NFA部分的多数代码是为实现正则引擎准备的,而Parser部分不少代码都是为了给语法树节点添加上充足的辅助信息以实现精确报错以及原本计划实现的Tracer。该项目发布后就收到不少来信,请求给它添加一个执行匹配文本的功能,还有请求支持PCRE,但目前我没有时间精力继续推进,只能等一等啦。

最后,立即在线体验:https://jex.im/regulex/

Github:https://github.com/CJex/regulex