UltraEdit中正则替换
UltraEdit中正则替换
网上已经有很多关于UltraEdit正则的文章了,但基本上都是UltraEdit的帮助文档的内容,对于如何进行用正则表达式进行批量替换并无详细说明。在开发中我们经常要进行某种规则的替换,这里就要用到UltraEdit强大的正则功能。
UltraEdit支持两种风格的正则表达式,1.“UltraEdit风格正则表达式”,2.“UNIX 样式正则表达式”,默认为“UltraEdit风格正则表达式”,我们一般要用的是UNIX 样式正则表达式,所以需要在UltraEdit的“高级”菜单中选择“配置”,在“搜索”页中选择“UNIX 样式正则表达式”即可。
对于UNIX 样式正则表达式如何编写可以查看相关文档,在此列出帮助参考:
代码/语法 | 说明 |
---|---|
. | 匹配除换行符以外的任意字符 |
\w | 匹配字母或数字 |
\s | 匹配任意的空白符 |
\d | 匹配数字 |
\b | 匹配单词的开始或结束 |
^ | 匹配字符串的开始 |
$ | 匹配字符串的结束 |
代码/语法 | 说明 |
---|---|
* | 重复零次或更多次 |
+ | 重复一次或更多次 |
? | 重复零次或一次 |
{n} | 重复n次 |
{n,} | 重复n次或更多次 |
{n,m} | 重复n到m次 |
代码/语法 | 说明 |
---|---|
\W | 匹配任意不是字母和数字的字符 |
\S | 匹配任意不是空白符的字符 |
\D | 匹配任意非数字的字符 |
\B | 匹配不是单词开头或结束的位置 |
[^x] | 匹配除了x以外的任意字符 |
[^aeiou] | 匹配除了aeiou这几个字母以外的任意字符 |
案例:某文件中有相当多"news1.xxx.com/1231,60983.html" 形式的链接,需要将该形式中的news1改为news2,其它形式的不去改变。
替换方法:
在UltraEdit“搜索”菜单中选择“替换”,勾选上“正则表达式”,在“查找”输入框中输入
news1.xxx.com/(\d+),(\d+).html
在“替换”输入框中输入
news2.xxx.com/\1,\2.html
点“全部替换”即可对文档中所有此形式的字串全部替换。当然,如果要用正则批量替换某个目录中此形式的字串,只需要在UltraEdit的“搜索”菜单中选择“在文件中替换”,炮制以上方法即可。