
Regex Match Tracer(正则表达式测试工具)
v2.1.6 官方版- 软件大小:0.47 MB
- 更新日期:2019-06-24 18:00
- 软件语言:简体中文
- 软件类别:编程工具
- 软件授权:免费版
- 软件官网:待审核
- 适用平台:WinXP, Win7, Win8, Win10, WinAll
- 软件厂商:

软件介绍 人气软件 下载地址
Regex Match Tracer 是一款用来编写和测试正则表达式的工具软件,该应用程序主要针对编程编写以及测试而开发,程序小巧使用,用户在使用过程中可以导入模板库进行编写,这样可以大幅度提高用户的工作效率;程序还为用户提供了DEELX正则引擎,此功能全部采用模板template编写,可将DEELX用于char,非常强大,和其他编辑器一样,该程序支持编辑时采用用括号将其他表达式包含,可以使被包含的表达式组成一个整体,在被修饰匹配次数时,可作为整体被修饰;程序还有很多功能,小编将详细在下文中为大家介绍;强大又实用,需要的用户可以下载体验

软件功能
支持与 Perl 兼容的正则表达式语法。
支持 IGNORECASE, SINGLELINE, MULTILINE 等常见匹配模式。
兼容性强,能在 vc6, vc7, vc8, gcc, Turbo C++ 等大多数 C++ 环境编译。
支持命名分组,条件表达式,递归表达式等多种高级特性。
与 GRETA、boost 相比,DEELX 独到之处:
完全使用模版库编写,支持 char, wchar_t, int 等以及其他基类型版本。
全部代码位于一个头文件(.h)中, 比任何引擎都使用简单和方便。
支持从右向左匹配模式,可从文本结束位置向前搜索匹配。
可防止零长度子匹配循环无限次而产生的死循环。
软件特色
DEELX 支持 Perl 兼容的正则表达式基本语法。基本语法规则在各个不同的正则引擎中表现基本一致。
普通字符
字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。
简单的转义字符
一些不便书写的字符,以及后边章节中特殊定义的符号,采用在前面加 "\" 的方法来书写。
转义字符(\Q...\E)
使用 \Q 开始,\E 结束,可使中间的标点符号失去正则语法所定义的特殊意义。
字符集合
可以与 '多个字符' 中的任意一个字符匹配的表示方法。
自定义字符集合
使用方括号 [ ] 自定义与 '多个字符' 中的任意一个字符匹配的表示方法。
匹配次数限定符
使另外一个子表达式可以重复进行匹配。
字符边界
本身不匹配任何字符,但对字符边界设置了条件。
选择表达式
使用“|”将多段表达式分隔,可匹配其中任意一段。
分组
使用括号 ( ) 包含的表达式,匹配到的文本可以单独获取。
命名分组
给分组命名,该分组的匹配结果可通过名字来单独获取。
反向引用
匹配过程中,对分组的匹配结果进行引用。
安装步骤
1、浏览至此,需要的用户可以点击本网站提供的下载路径下载得到对应的程序安装包

2、通过解压功能将压缩包打开,找到主程序,双击主程序即可进行安装,点击下一步按钮

3、用户可以根据自己的需要点击浏览按钮将应用程序的安装路径进行更改

4、现在准备安装主程序。点击“安装”按钮开始安装或点击“上一步”按钮重新输入安装信息。

5、根据提示点击安装,弹出程序安装完成界面,点击完成按钮即可

6、应用程序安装完成后,双击程序快捷键即可将程序打开

使用说明
从右向左(RIGHTTOLEFT)匹配模式
DEELX 支持从右向左匹配模式,可使表达式从文本结束位置向前查找匹配。在表达式中,右侧的表达式比左侧的表达式先匹配。编写用来在“从右向左”模式下使用表达式与普通情况下使用的表达式并没有什么不同。匹配次数修饰符(*, +, {n}, ……)仍然位于被修饰部分的右侧;^ 仍然匹配文本开始;正向预搜索 (?=xxx) 仍然是向右搜索,而不是向左;分组(group)编号仍然是从左向右进行编号;等等。
需要注意的是,当使用了“从右向左”模式后,右侧的表达式会先进行匹配。这时如果使用了反向引用,那么被引用的分组(group)应该是在右侧。
比如:

递归匹配没有这个限制,不管是否是“从右向左”模式,下边的两种写法都是可以的:

反向预搜索(反向零宽度断言)
“反向预搜索”就是在匹配过程中,要求当前位置左侧的文本必须符合某个条件,格式为 (?<=xxx) 或者 (?

关于反向预搜索中包含的表达式,Perl, Java, GRETA 以及 DEELX 的细节都不相同:

DEELX 中的反向预搜索:
DEELX 采用 RIGHTTOLEFT 模式来匹配“反向预搜索”中的表达式。使反向预搜索与正向预搜索在逻辑上完全相同,而方向相反。因此,在 DEELX 中,反向预搜索与正向预搜索一样,没有长度限制。
比如,在 DEELX 引擎中:

移植简单
DEELX 全部使用模板库编写,因此没有任何 cpp 或者 lib 文件。全部代码位于一个头文件(deelx.h)中。使用时,不需要为 DEELX 创建 project,也不需要添加任何 cpp 或者静态库 lib 文件。运行时,也不依赖专门的动态库。
使用 DEELX 正则引擎时,只需要简单地添加一个 include 就可以了:

由于 deelx.h 已经直接包含到你的项目中,因此不会存在 Runtime Library 与主项目不同的问题,也不用担心会产生连接错误的问题。
兼容性
DEELX 采用纯 C++ 代码编写,没有使用任何 STL 类或者 MFC 类。DEELX 已测试能够在以下编译器及操作系统中编译:

在其他平台以及其他编译器下,我们还未进行测试。
如果您在其他的编译器或者其他系统下编译成功或者编译失败了,可以通过 regexlab@gmail.com 告诉我们,我们将非常感谢。
命名分组
DEELX 支持 Python 及 .NET 风格的命名分组。命名分组的编号顺序按照 .NET 风格。DEELX 支持以下格式的命名分组:

匹配成功后,可通过分组的命名来获取分组捕获到的内容。
DEELX 允许多个命名分组的名字相同,这时它们捕获到的内容会放在同一个分组编号下。在逻辑上,它们是同一个分组,比如: (?".*?")|(?'.*?') 。如果两个命名相同分组之间有包含关系,那么被包含的那个分组将不进行捕获,比如: (?(?\d+)\.?) 。
此外,与命名分组相关的功能有:反向引用,递归表达式,条件表达式,以及替换操作。

条件表达式
条件表达式就是根据某个条件是否成立,来选择匹配 2 个可选表达式中的其中一个。可以用于条件表达式的条件有两种类型:
指定分组(group)是否进行了捕获。
文本中当前位置是否可以与指定表达式匹配。
条件表达式的举例及说明:

补充说明:
如果表达式为 RIGHTTOLEFT 模式,那么 (?(xxx)aa|bbb) 与 (?(?<=xxx)aa|bbb) 相同。
如果条件表达式只有一个选择项,那么这个选项是在条件成立时进行匹配。
如果条件表达式中,使用“|”进行分隔的选项多于2个,则只有第一个“|”被视为条件表达式选项分隔符。比如: (?(?=xxx)yes|no1|no2),条件成立时,匹配 yes 部分,否则匹配 "no1|no2"。
递归表达式
“递归表达式”就是对另一部分子表达式本身的引用,而不是对其匹配结果的引用。举例说明:

如果被引用的表达式又包含自身,则形成了递归引用。举例说明:

递归表达式的格式有:

防止死循环
能匹配零长度的子表达式,如果在被修饰匹配次数时被修饰为可以匹配任意次,则在很多正则引擎中,容易出现死循环。为此,DEELX 已通过技术手段,防止死循环的出现。
比如,容易出现死循环的表达式:

DEELX 匹配模式
DEELX 支持的匹配模式有:IgnoreCase, Singleline, Multiline, Global, RightToLeft, Extended 这 6 种模式以及它们的组合。
说明
IGNORECASE
匹配时忽略大小写。默认情况下,正则表达式是要区分大小写的。不管是否指定忽略大小写模式,字符类,比如 [A-Z] 是要区分大小写的。
SINGLELINE
使小数点 "." 可以匹配包含换行符(\n)在内的任意字符。默认情况下,小数点只匹配换行符以外的任意字符,不匹配换行符。
MULTILINE
使 ^ 符号除了能够匹配字符串开始位置外,还能匹配换行符(\n)之后的位置;使 $ 符号除了能够匹配字符串结束位置外,还能匹配换行符之前的位置。默认情况下, ^ 符号只能匹配字符串开始位置, $ 符号只能匹配字符串结束位置。
SINGLELINE 和 MULTILINE 虽然听起来相互矛盾,但却是作用在不同的地方。因此它们是可以组合使用的。
在指定了 MULTILINE 之后,如果需要仅匹配字符串开始和结束位置,可以使用 \A 和 \Z。
GLOBAL
使 \G 可以用来匹配本次查找匹配的开始位置,对于连续的匹配来说,也就是上次匹配的结束位置。默认情况下, \G 没有作用。
DEELX 在进行替换操作(Replace)时,不管是否指定 GLOBAL 模式,DEELX 都可以进行所有的替换。是否指定 GLOBAL 模式只是对 \G 起作用。如果希望进行有限次数的替换,可在替换操作时指定替换次数。
RIGHTTOLEFT
从右向左的进行匹配。从被匹配字符串的结束位置向前进行查找匹配,同时,在表达式中也是右侧的表达式先进行匹配。
表达式的写法仍然按原来的习惯:匹配次数修饰符(*, +, {n}, ……)仍然位于被修饰部分的右侧而不是左侧;^ 仍然匹配文本开始而不是文本结束;(?=xxx) 仍然是正向与搜索(向右预搜索),而不是向左;分组(group)编号仍然是从左向右进行编号;等等。
不管整个表达式是否指定了 RightToLeft 模式,"反向预搜索(反向零宽度断言)" 内的表达式始终采用 RightToLeft 模式。
EXTENDED
使 DEELX 忽略表达式中的空白字符,并且把从 # 开始到该行行末的内容视为注释。默认情况下,正则表达式中的空格,换行等字符将可以匹配相应的字符。指定了 EXTENDED 模式后,如果要在正则表达式中表示空白字符比如空格符号(space)时,应该用 \x20 表示,如果要在表达式中表示 # 符号,应该用 \# 表示。
不管是否指定了 EXTENDED 模式,括号内以 ?# 号开始时,比如(?# xxx ),那么这一对括号以及包含的内容都始终作为注释而被忽略。
人气软件
-
redis desktop manager2020.1中文 32.52 MB
/简体中文 -
s7 200 smart编程软件 187 MB
/简体中文 -
GX Works 2(三菱PLC编程软件) 487 MB
/简体中文 -
CIMCO Edit V8中文 248 MB
/简体中文 -
JetBrains DataGrip 353 MB
/英文 -
Dev C++下载 (TDM-GCC) 83.52 MB
/简体中文 -
TouchWin编辑工具(信捷触摸屏编程软件) 55.69 MB
/简体中文 -
信捷PLC编程工具软件 14.4 MB
/简体中文 -
TLauncher(Minecraft游戏启动器) 16.95 MB
/英文 -
Ardublock中文版(Arduino图形化编程软件) 2.65 MB
/简体中文