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. 通过输入卡号前10位数字判断是哪个银行的卡和类型(储蓄卡or信用卡)

    19位银行卡(包括储蓄卡和信用卡)可以通过前10位数字判断是哪个银行的卡和类型(储蓄卡or信用卡) 16位银行卡(包括储蓄卡和信用卡)可以通过前10位数字判断是哪个银行的卡和类型(储蓄卡or信用卡) ...

  2. 关于MySql全文索引

    从 Mysql 4.0 开始就支持全文索引功能,但是 Mysql 默认的最小索引长度是 4.如果是英文默认值是比较合理的,但是中文绝大部分词都是2个字符,这就导致小于4个字的词都不能被索引,全文索引功 ...

  3. .Net core Linux环境安装

    10月份的时候在自己电脑上搭了开发环境,当时跑完Welcome后就搁置了一段时间,最近有一个小项目要正式采用core来开发并部署在linux环境下,于是在Linux上也搭建一个运行环境. 虽然不经常使 ...

  4. TabControl的SelectionChanged事件

    DataGrid作为TabControl控件的TabItem的content元素. 当操作DataGrid的不同cell时,会引发了TabControl的SelectionChanged事件的问题. ...

  5. [Android学习笔记]理解焦点处理原理的相关记录

    焦点处理相关记录 以下所涉及的焦点部分,只是按键移动部分,不明确包含Touch Focus部分 需解决问题 控件的下一个焦点是哪? 分析思路 当用户通过按键(遥控器等)触发焦点切换时,事件指令会通过底 ...

  6. C# 将透明图片的非透明区域转换成Region

    以下代码实现将一张带透明度的png图片的非透明部分转换成Region输出 /// <summary> /// 根据图片得到一个图片非透明部分的区域 /// </summary> ...

  7. Discuz 取各排行榜数据

    取论坛指定版块帖子或回复(first=1 就是帖子的1楼, 如果=0 就是调用回复,fid=62 是论坛版块号): SELECT * FROM discuzx.pre_forum_post where ...

  8. SRTM数据介绍与说明

    一.SRTM 的背景引言 美国利用航天飞机搭载成像雷达对地进行观测始于20 世纪80 年代初.1982 年11 月和1985 年10 月, 美国分别进行了两次称为S IR2A 与S IR2B 的航天飞 ...

  9. GPS坐标换算为百度坐标

    最近在做一个关于手机定位的小应用,需求是这样的,用户通过手机(Wp8)进行二维码扫描操作并且记录用户的当前位置,在PC上可以查看用户所在地图的位置,做法就是在用户扫描条码时,通过手机GPS获取当前在地 ...

  10. Memcached通用类(基于enyim.com Memcached Client)

    一.如果用官方提供的方法,在web.config里面配置好了各个参数和服务器IP.如下图: <?xml version="1.0"?> <configuratio ...