用于视觉构建正则表达式的软件?


17

我经常需要创建用于脚本的正则表达式(通常是在中使用sed),但是,我发现,有时正则表达式变得非常复杂,难以理解和编辑。是否有任何软件可以直观地创建正则表达式的代码,然后将其复制并粘贴到脚本中?

Answers:


9

您使用什么wm?
enzotib 2011年

1
不是我,那是直接来自项目主页的链接。但是它看起来像是1990年代末流行的fvwm。可以随意与fvwm.org/screenshots/desktops/Helmuth_Schmelzer-1366x768/…之类的东西进行比较,我不知道今天的fvwm处于什么状态(但是在kde和gnome发明之前,状态非常稳定)。
约翰

1
窗口装饰直接来自Motif,此后已移植/复制到其他窗口管理器中。en.wikipedia.org/wiki/Motif_Window_Manager
Arcege 2011年


4

尝试使用txt2regex,看看是否有帮助。我从未认真使用过它,但是当我尝试它时,它看起来很酷。



2

OP并不一定要提供什么-但我认为这很重要,因此我将为Regex编辑器发布“ 建议书”吗?#549107-问Ubuntu

这是我尝试使用的可视化正则表达式GUI工具visRegexTester.py

如果您键入并更改“ regex”字段,则它具有“实时预览”(“自动重新运行”)。否则,它就是那个单一文件。开始时有一个README注释-这是其中的摘录:

visRegexTester是一个小型Python / Tkinter GUI应用程序,可帮助编写正则表达式。使用python 2.7和3.2进行了测试。事实上,这仅是为了其他命令行程序的接口:它利用这样的事实,很多的Unix / GNU / Linux程序的用作终端(例如正则表达式处理器grepsedperl),有三个类似的命令行语法部分:

(程序-角色)('REGEX')(文件名)

...请参阅其余部分。屏幕截图:

visRegexTester_01.png


1

是的,text2re.com应该与您要查找的内容接近。给定源文本,您可以选择生成与任何给定文本匹配的正则表达式。该工具还生成用于少量语言的代码。

regex构建器UI(页面上的第2步)有点难以学习;请注意,将鼠标悬停在任何选项上都会说明您要匹配的对象:

正则表达式工具用户界面


0

我不太确定“可视地创建代码”是什么意思(您是指GUI工具吗?)。如果您像我一样,我发现无法使用复杂的正则表达式,除非我以结构化的方式对其进行布局,以便可以更好地直观地显示逻辑。

实际上,sed它只是一种脚本语言,可以像其他语言一样进行布局。每行一个命令。这是我的意思的典型示例:sed正则表达式,显示结构化布局

的一个非常方便的功能sed是它的调试命令l,它是一个简单的行转储,显示了模式空间,其中嵌入的换行符显示为\n等。

问题sed不仅仅在于正则表达式。它具有用于循环和条件测试的时髦命令集。这需要时间来习惯。。。我找到的最好的工具可以帮助我进行处理,sed这很简单:我详细阅读了手册。简单的事情起作用;然后积累更大的经验来积累经验。

Perl regex具有一些有用的功能来帮助布局复杂的模式。例如。能够忽略表达式中的空白。(作为挑战,出于体验方面的考虑,我编写了一个sed解析器来解析我的sed代码以允许这样的空白... PS。由于经验,我现在不需要它了。 :)实际上,仅布置命令(每行一个)几乎与perl功能一样好。

帮助您的最佳工具是:体验。例如。解决此站点上的正则表达式问题是获得该体验的好方法...我觉得GUI工具并没有太大帮助,因为它们抑制了体验 ...

总之,最好的帮助工具是经验结构化的布局,然后详细阅读手册。

我已经使用了很多“ experieince”这个词。..它的意思是准备正则表达式的行为(对于sed,则是任何循环逻辑等)是关键因素。工具;不要为您编写正则表达式;他们只测试它,他们肯定不会处理sed的程序逻辑,因为那不是正则表达式。(而且您已经特别挑出了sed)……他们可能提供的语法高亮对我没有多大帮助。括号匹配良好的编辑器非常方便(我使用emacs)。


我认为,如果您拥有易于测试和实验的工具,那不会有什么坏处。(emacs的重新构建器)
favadi

1
我已经用过了emacs re-builder,它一点都没有帮到我……没过第一天...所有显示给我的是emacs,由于emacs是如何评估事物的,因此它需要额外的一两个反斜杠...通过C-x C-e。评估您的正则表达式进行相同的测试。它不会为您编写表达式;仍然需要编写它...然后就有emacs了使用描述性词来编写正则表达式的系统。.(我认为冗长/类似英语的系统在COBOL中就已经消失了..但即使COBOL也不是完全消失, ..和担忧,仍然需要编写它。
Peter.O 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.