RegexBuddy非常的好用,而且还能生成.net的代码。

我们在使用正则匹配时,毕竟.net提供的方法中,对于多行匹配就不能用单纯的正则去实现,而我们需要把它转换成相应的类库方法进行实现。

那么RegexBuddy这个工具就很好的提供了这些生成的代码。而且,可以针对主流语言进行生成,非常的方便。

效果如下:

下面是我收集的一些使用教程:

http://www.lifeba.org/arch/regexbuddy.html

一、RegexBuddy下载及安装

本站下载地址:JGsoft-RegexBuddy-v3.1.0.rar,也可以在http://www.regexbuddy.com/(RegexBuddy的官网)进行最新版本的下载和正版的购买。下载后直接安装,打开界面如下:

二、工具界面

1、首先切换到 Side By Side Layout,这个布局,更方便操作。

2、界面主要包括:正则表达式、测试文本、输出结果、历史记录、Create相关面板。

三、使用介绍

打开RegexBuddy后默认载入的是上一次你所测试的正则信息,选项配置信息都会自动载入上次你所设置的内容。历史记录中显示的是你所测试过得正则信息。

1、测试正则表达式。

a、在正则表达式输入需要测试的正则,如:。可以通过上面的面板选择语言,默认是JGosft,可以指定JAVA,Python等。

b、测试文本面板(Test标签)输入需要测试的文本内容,如:。可以选择Line By Line、Whole File、Page By Page,来指定是每行抽取,还是对整个文档抓取等(如果你的正则匹配信息有包含多行内容,务必要选中Whole File或者Page By Page)。测试文本面板会根据正则表达式和测试内容,实时显示匹配到的高亮预览信息。如:上图中的,全部高亮,如果你选中了HighLight下得HighLight Group1选项,还会实时显示抽取出来的内容:www.lifeba.org。上面2个部分用不同的颜色模块显示区分。当然你也可以不选择预览。

c、输出结果面板,显示的显示了正则表达式的匹配结果。你可以通过List All切换显示的效果。

比如,可以选中List ALL Group Matches in columns显示的效果,就是上面图中的输出结果面板效果。如果,你选中了Update Automatically,则修改正则或文本内容时候,输出结果面板会实时跟着变化。

d、点击 Debug按钮,会自动跳到Debug面板,显示出正则表达式匹配的规则。通过该结果,你可以很直观的分析出正则匹配的过程。

2、使用Libray库文件。

测试好了正则表达式后,你可以把他添加到自定义库里,并保存本地硬盘。这样下次你可以直接调用出来修改。通过Libray按钮,你可以切换到该面板。你首先要把选中Read Only去掉,才编辑该库文件。

a、点击 Add 按钮,可以选择Add Regex Only 或者 Add Regex With Test Subject,指定只保存正则,还是同时保存正则和测试文本。这里选择Add Regex With Test Subject后,可以看到已经成功将规则加入到库中,然后你可以点击保存按钮,来保存该库到硬盘上面。

b、点击 Use 按钮,可以选择使用该正则,同样有3个选项,让你指定是否使用测试文本等信息。

c、点击 Update 按钮,可以把修改后的正则更新到该库中。

上面的操作,可以直接选择该正则,然后点击右键操作。

3、Use面板,可以很方便导出正则为不同的编程语言格式。首先现在Language,指定输出语言为Python;然后use后面选择使用的编程方法;最后指定下变量名,就可以看到生成了Python的代码了。

4、GREP面板。在文件中使用上面的正则来搜索内容。点击GREP按钮可以切换到该面板。指定Folders,File masks类型信息后,再右上角点击GREP按钮,可以看到搜索的结果。

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

a、点击 Explain Token按钮,指向的正是你所选择的节点的正则表达式的语法规则的解释。

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

c、Export按钮,可以将当前的表达式导出到文本文件、HTML文件或放入到剪贴板中。打印按钮,可以将当前的表达示打印出来。

上面的这些按钮,也可以直接点击右键来操作。

6、历史记录面板。显示你所编辑过得正则信息,你可以随时点击来切换。

四、其他功能介绍

1、上面的界面是再Match模式下的介绍;如果点击上面的Replace按钮,显示的面板会由稍微的不同。下面的界面显示了,对匹配到的正则内容,替换为HELLO的效果。

2、Split模式下,指定用匹配的正则做分割,可以指定要去的split次数。

3、特殊功能

a、Dot matches newline:是否允许 . 匹配任何字符包括分隔符。Case insensitive:是否不区分大小写。

选中后,测试效果如下:输入的是大写的TITLE,以及多行显示都可以匹配出来。

b、^$ match at line breaks:对^$只会对开始的字符串或者结束的字符串做匹配,如果选中该选项,则可以对前后换行也支持。选中后,效果如下:http://www.lifeba.org/前后都有行,可以匹配出来。

上面的特殊功能只是工具自带的功能,如果你需要这个功能必须在持续中实现,因为这不是正则表达式本身的一部分。

RegexBuddy正则表达式工具的更多相关文章

  1. (转)介绍几个C#正则表达式工具

    推荐三个C#正则表达式工具,理由如下 第一个C#正则表达式工具,REGEX 这个C#正则表达式工具优点是中文的,提供了一些示例 第二个C#正则表达式工具,REGEXBUDDY 这是一个真正专业的REG ...

  2. 介绍几个C#正则表达式工具

    这里将为大家推荐介绍几个C#正则表达式工具,这些小工具能帮助大家在.NET开发过程中起到事半功倍的效果,希望大家喜欢. 推荐三个C#正则表达式工具,理由如下 第一个C#正则表达式工具,REGEX 这个 ...

  3. 一款免费好用的正则表达式工具:Regex Match Tracer

    推荐分享:一款免费好用的正则表达式工具:Regex Match Tracer  v2.1.5  free version 下载地址:Regex Match Tracer

  4. JAVA自动生成正则表达式工具类

    经过很久的努力,终于完成了JAVA自动生成正则表达式工具类.还记得之前需要正则,老是从网上找吗?找了想修改也不会修改.现在不用再为此烦恼了,使用此生成类轻松搞定所有正则表达式.赶快在同事面前炫一下吧. ...

  5. 正则表达式工具类,正则表达式封装,Java正则表达式

    正则表达式工具类 正则表达式封装 Java正则表达式 >>>>>>>>>>>>>>>>>>& ...

  6. [Swift]正则表达式工具类

    正则表达式工具类 import Foundation //基于NSRegularExpression api 的正则处理工具类 public struct Regex { private let re ...

  7. 正则表达式工具RegexBuddy使用教程(原创自Zjmainstay)

    从<我眼里的正则表达式(入门)>这个文章,到<深入正则表达式应用>,再到后来专门创建的正则QQ群"专精正则表达式",到现在已经过去2年时间了.在文章和群里一 ...

  8. 正则表达式工具RegexBuddy

    1 下载 RegexBuddy 并安装 安装后的界面如下:     2 切换布局 点击右上角的彩色格子图标,选择 Side by Side Layout:     这种布局的好处是,Create 面板 ...

  9. Mac下使用Wine安装正则表达式工具RegexBuddy 4

    下载: (链接: https://pan.baidu.com/s/1bzRae6 密码: b5d3) 安装: 1.安装Wine 参考:http://www.cnblogs.com/EasonJim/p ...

随机推荐

  1. mysql客户端授权后连接失败问题

    在本地(192.168.1.152)部署好mysql环境,授权远程客户机192.168.1.%连接本机的mysql,在iptables防火墙也已开通3306端口.如下:mysql> select ...

  2. js常见执行方法$(document).load(),$(document).ready()

    $(document).load(); 当web页面以及其附带的资源文件,如CSS,Scripts,图片等,加载完毕后执行此方法.常用于检测页面(及其附带资源)是否加载完毕. $(document). ...

  3. shell案例

    调用同目录下的ip.txt内容: 路径 [root@lanny ~]# pwd /root txt文件 [root@lanny ~]# cat ip.txt 10.1.1.1 10.1.1.2 10. ...

  4. linux命令细究

    ls -ldahipFtr    -t按照修改时间    -r翻转排序 /etc/profile  别名grep --color ls -pF ^$空行egrep -v "^#|^$&quo ...

  5. MySQL基础 - 编码设置

    刚开始工作的时候,在工作中遇到的与数据库相关的问题,多半跟编码有关,总结一下数据库编码的设置. 字符集 查看数据库支持的字符集: mysql> SHOW CHARACTER SET; 从图中可以 ...

  6. OAF中 遍历HGrid组件中的所有VO行

    在HGrid组件中有如下所示的HeaderVO和LineVO 需要在头上的LOV中触发事件去更新行VO中的值,LOV事件的处理方法见 getLovParameter ,但是由于HGrid的特殊性,不能 ...

  7. [CareerCup] 7.2 Ants on Polygon 多边形上的蚂蚁

    7.2 There are three ants on different vertices of a triangle. What is the probability of collision ( ...

  8. RocEDU.阅读.写作《你的灯亮着吗?》

    <你的灯亮着吗?> 一.对本书的认识 这本书的作者就如何训练思维能力指点迷津.书中提及的观点包括"问题是理想状态和现实状态之间的差别",以及"无论表面上表现的 ...

  9. C/C++指针内存分配小细节

    char *pc = NULL; pc = new char[0]; pc[0] = '1'; 相信初学者看见上面这段代码,都会觉得奇怪,new char[n]中的n指定给指针变量分配多少内存空间,而 ...

  10. .net截取两个字符串中间的内容

    做模拟登录时,需要截取html代码中的名字,返回的字符串内容如下 <span class="welcome">您好<span style="font-s ...