Begtostudy(白途思)'s Professional Technology Blog

欢迎访问begtostudy的专业知识博客!主要是专业技术和算法为主。
  首页  :: 联系 :: 订阅 订阅  :: 管理

RegexBuddy

Posted on 2010-11-29 18:56  白途思  阅读(1760)  评论(3编辑  收藏  举报

开始学习正则表达式了,增取今年过后能够熟悉的使用它,太强大了!!

昨天晚上对这几天学习过程中使用的工具RegexBuddy进行了总结。

一、 什么是RegexBuddy

使用了几天,个人感觉RegexBuddy 是学习正则表达式时的比较好的帮手。它可以容易地建立你想要的正确的正则表达式。清晰地推断他人所写的复杂的正则表达式。它还可以用给出的实例字符串或文件快速地进行测试匹配,从而防止了在实际应用中出现错误。RegexBuddy会在你的源代码中根据你所应用的特殊编程语言,自动生成带有正则表达式的代码段。同时你也可以收集正则表达式到库中,以在未来重新使用。

二、 获得RegexBuddy

http://www.newhua.com/soft/56808.htm这是华军的下载地址,这个版本是评估版,是免费的,可以在百度或者GOOGLE中搜索,目前最新的版本是3.2.1(图2-1),于2008年12月9日发布的。也可以在http://www.regexbuddy.com/(RegexBuddy的官网)进行最新版本的下载和正版的购买。

图2-1 RegexBuddy的3.2.1版

三、 初步认识RegexBuddy

安装比较简单(略过)

首先,我们先对RegexBuddyg 产生一个整体的初步的认识,而不是设法解释所有的东西。RegexBuddyg是相当易懂的容易的,所以我想经过简单大家应该能够基本正确地使用它。

默认情况下,RegexBuddy会在顶部显示正则表达式和上一次使用的历史,如图2-1。

图3-1 RegexBuddy的顶部

底部会显示7个选项卡,分别是“Create”、“Test”、“Debug”、“Use”、“Library”、“GREP”、“Forum”(需要注册才能使用此功能),如图2-2。

图3-2 RegexBuddy的底部

如果你的显示器较大,也可以分成两块平铺,你可以单击窗口最右上方工具栏上的“View”按键,在菜单中选择“Side by Side Layout”,这样你可以最大限度的同时查看两个窗口(图3-4)。

图3-3 Side by Side 样式

你也可以手动地通过鼠标拖拽“选项卡”来进行排列,选项卡面板可以是“选项卡”、“独立内嵌”或“浮动”的,通过“View”菜单,你也可以隐藏“选项卡”。而工具栏也可以被重新排列或者是浮动的,在工具栏上单击右键可以选择要隐藏的工具栏。

四、 开始建立第一个正则表达式

接下来我们来用RegexBuddy来建立一个简单的正则表达式,以进一步加深对它的了解。

我们在文本域中直接输入:“^[0-9]*$”,也就是只允许有数字的正则表达式,然后在Test中输入下列测试文本: 90909、uiuiu、56464、787b、001、a65b(每输入一个换一行,文本内容任意更换)并选择“Line by line”,在此时界面如图4-1:

图4-1 Example

会发现匹配的字符串会被高亮显示,十分方便查找与正则表达式匹配的部分!

RegexBuddy中“Create”与“Test”选项卡是你新建正则表达式时最有用的,一般我会按照之前选择的“Side by Side Layout”样式,这样就可以同时看见这两个面板。

在“Create”选项卡中,可以看到对这个正则表达式的解释的一个树状展示,其中的每一个节点对照着表达式中的一个元素块,在RegexBuddy中被称为一个“token”,我们点击其中的一个节点,就会在我们所输入的表达式的相应部分进行着重显示。在分析他人所写的复杂的表达式的时候在这里查看会十分方便。

此选项卡中包含四个按键:

l “Explain Token”按键,打开RegexBuddy所自带的正则表达式指南,而且指向的正是你所选择的节点的正则表达式的语法规则的解释,十分方便!!

l “Insert Token”按键,会弹出一个下拉菜单(这个菜单会在以后介绍),其中包含了正则表达式里涉及的所有语法符号,可以进行选择,当然对于语法十分熟悉后,就可以不用这个菜单,直接在上面的文本输入区键入表达式了。

l “Export”按键,可以将当前的表达式导出到文本文件、HTML文件或放入到剪贴板中。

l “打印”按键,可以将当前的表达示打印出来。

 

原帖:http://blog.csdn.net/imasmallbird/archive/2009/01/22/3850299.aspx

前往Begtostudy的编程知识博客(CSDN)