正则表达式替换器 RegeX 3 发布 (Silverlight版)

简介:

image

上一版本RegeX发布以来已有三年多了,此次发布全新设计的RegeX 3供广大开发者使用。

新版基于Silverlight开发,支持安装到本地运行,采用类似WindowsPhone7的Metro风格设计。

新版本的主打功能有两点:

  • 支持无限层级的复杂多重匹配与替换
  • 支持在替换时以$@符号引用经过处理后的组内容

这两个功能主要为了解决如下问题:

  1. 冗长的表达式结构。
    在匹配复杂的格式时,使用的表达式不仅冗长,且晦涩如天书,一旦修改时不小心改变了某个符号后患无穷。
    无限级多重替换功能将极大改善这一情况,你可以将替换工作拆分成若干个步骤,分别处理,使得思路清晰,表达式易于维护。
  2. 不可能的任务。
    正则表达式是万能的,但万这个数字并不大,有很多格式是不可能或很难用一个表达式来完成的,很多时候我们需要自己来写一个新程序予以解决,而当有了$@引用功能,很多问题迎刃而解。
    $@符号允许引用目标组的处理结果,比如以前我们在替换时以$1形式引用组1的内容,现在我们可以对$1组再进行正则替换,然后以$@1形式引用其替换结果,这在处理复杂格式时极为有用。

 

立即开始使用RegeX3:http://www.cnblogs.com/SkyD/articles/regex3.html

提示:程序中单击右键可以安装到桌面,并脱离浏览器运行:

image

SNAGHTML74fecf3

 

使用入门

首先在源文本框中输入要处理的字符,通常通过剪切板粘贴入:

image

然后输入表达式及匹配选项:

image

再输入替代内容及替代选项:

image

单击执行替换按钮:

image

此时匹配项和结果都将出现在左栏,展开以查看:

image

此时在右侧你可以通过集合记录导航功能查看具有多个结果的节点:

image

此时你可以继续对任意节点进行正则替换操作,以达成需求。

全部处理完毕后,点击复制最终输出结果按钮可以复制最下面的OutPutText节点文本到剪切板:

image

通过导入导出功能可以读取和保存所有数据:

image

image

 

特别提示

image

这里形如$0或${FuncName}或$@{Parameters}的名称即是在替换时的引用标记,上述三个形式分别代表组、命名组和经过处理的命名组,替换时可以以$形式引用子级节点内容,或以$@形式引用孙级节点内容。

当前所选节点能够引用的后代节点都使用浅黄色表示。

后面的[105]表示该组有105个项,可以通过滑动导航条查看每一项:

image

 

小技巧

点选任意一个$开头的节点后,按Ctrl+C可以直接复制其替换时的引用字符到剪切板:

image

除此之外,还有个更方便的办法,就是直接在$开头的节点上点鼠标,即可直接将其引用字符复制到剪切板:

image

 

如果引用孙级节点的处理结果还不能满足你的话,你还可以继续对其进行处理,每多一层处理,引用时就多些一个@:

image

这样你的表达式可以像树杈一样不断延展,但始终都不脱离主干。


本文转自斯克迪亚博客园博客,原文链接:http://www.cnblogs.com/SkyD/archive/2012/01/02/2309769.html,如需转载请自行联系原作者


相关文章
|
8月前
|
Java
java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
|
11天前
|
存储 C++ 容器
C++一分钟之-正则表达式库(regex)
【7月更文挑战第7天】C++从C++11开始支持正则表达式,通过`<regex>`库提供功能。本文涵盖基本概念如`std::regex`、`std::smatch`,以及`regex_search`和`regex_match`的使用。常见问题包括大小写敏感性、特殊字符转义、贪婪与非贪婪匹配和捕获组。提供的代码示例展示了如何进行匹配、不区分大小写的匹配、特殊字符匹配、贪婪与非贪婪匹配和捕获组的使用。理解并练习正则表达式能提升文本处理效率。
14 0
|
2月前
|
机器学习/深度学习 Python
正则表达式(Regular Expression,常简写为regex或regexp)是一种强大的文本处理工具
【5月更文挑战第12天】正则表达式是文本处理工具,Python的re模块支持其使用。元字符如.、*、+、?等在正则表达式中具有特殊含义,用于指定匹配规则。示例中,通过正则表达式模式匹配字符串中的电子邮件地址,并使用re.findall()找出所有匹配项。
41 4
|
2月前
|
安全
正则表达式(Regular Expression,简称regex或regexp)
正则表达式(Regular Expression,简称regex或regexp)
33 2
|
2月前
|
Python
在Python中,如何使用`regex`库进行正则表达式匹配?
在Python中,如何使用`regex`库进行正则表达式匹配?
33 0
|
2月前
|
Python
Python 正则表达式(RegEx)指南
正则表达式(RegEx)是一系列字符,形成了一个搜索模式。RegEx 可用于检查字符串是否包含指定的搜索模式。
53 0
|
9月前
|
C++ Windows Perl
[笔记]c++基础实践《二》regex正则表达式
[笔记]c++基础实践《二》regex正则表达式
re/regex:正则表达式(持续更新ing...)
re/regex:正则表达式(持续更新ing...)
|
Java Python 缓存
正则表达式(四):Java regex
以下示例所使用 Java 版本为: 1.8.0 有了上一章 python 中的 re 模块的铺垫(正则表达式(三):python re模块),对于 Java 中正则的使用理解上会简单许多。
1222 0
正则表达式Regex
正则表达式应用——实例应用 1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位; 2.
988 0