2009年9月21日星期一

UE(UltraEdit)的一些高级技巧(正则表达式)

一.               正则表达式主要符号

1.      % 匹配行首 - 表示搜索字符串必须在行首,但不包括任何选定的结果字符中的行终止字符。

 

2.      $ 匹配行尾 - 表示搜索字符串必须在行尾,但不包括任何选定的结果字符中的行终止字符。

 

3.      ? 匹配任何除换行符的字符。

 

4.      * 匹配任何除换行符外所出现的任意数量的字符。

 

5.      + 匹配一个或多个前面的字符/表达式。必须找到至少一个出现的字符。不匹配重复的换行符。

 

6.      ++  零次或多次匹配前面的字符/表达式。不匹配重复的换行符。

 

7.      ^b 匹配一个分页符。

 

8.      ^p 匹配一个换行符 (CR/LF) (段落) (DOS 文件)

 

9.      ^s 替换为被选择 ( 加亮 ) 活跃的文件窗口的文章。

 

10.  ^c 替换为剪贴板的内容

 

11.  ^r 匹配一个换行符 ( CR) (段落) (MAC 文件)

 

12.  ^n 匹配一个换行符 ( LF) (段落) (UNIX 文件)

 

13.  ^t 匹配一个制表符

 

14.  [ ] 匹配任何括号中的单个字符或范围

 

15.  ^{A^}^{B^} 匹配表达式 A B

 

16.  ^ 忽略其后的正则表达式字符

     注: ^ 是实际字符 ^不是Ctl + 键值。

17.  ^(*^)   在表达式加上括号或标签在替换命令中使用。

 

18.  [xyz] 一个字符集。匹配在方括号之间的任何字符。

19.  [^xyz] 一个否定的字符集。不匹配在方括号之间的任何字符。

20.  d 匹配一个数字字符。等价于[0-9]

21.  D 匹配一个非数字字符。等价于[^0-9]

22.  f 匹配一个换页字符。

23.  n 匹配一个换行字符。

24.  r 匹配一个回车符字符。

25.  s 匹配任何空白的空格, 标签, 换页, 包括空格等等,但不匹配换行符。

26.  S 匹配任何非空白的字符,但不匹配换行符。

27.  t 匹配一个标签TAB字符。

28.  v 匹配一个垂直的标签字符。

29.  w 匹配任何词语字符包括下划线。

30.  W 匹配任何非词语字符字符。

二.              相关功能使用搭配

1.  删除空行: 替换 %[ ^t]++^p 空串

2.  删除行尾空格: 替换 [ ^t]+$ 空串

3.  删除行首空格: 替换 %[ ^t]+ 空串

4.  %[ ^t]++^([~ ^t^p]^)  表示开头,如果想在行首添加字符值,则如:

Ø  替换 %[ ^t]++^([~ ^t^p]^) 北京市^1

Ø  每行设置为固定的4个空格开头: 替换 %[ ^t]++^([~ ^t^p]^) "     ^1" (操作时去掉^1两边的双引号)

5.  删除文本中指定的前2列字符: 替换 %?? 空串  (一个汉字为两个字符,需要两个??,如果需要删除多个汉字,则输入相应数量的?即可)

6.  如果首行以空格开头,想将每段设置改为固定的4个空格开头: 替换 %[ ^t]+ "    "   %[ ^t]+ 代表每行行首(操作时去掉空格两边的双引号; 如果一行是以空格开始的,则视之为一段的开始行)

7.  在第4列后插入2列空白字符: 替换 %^(????^)^(?^) "^1  ^2" (操作时去掉空格两边的双引号)

8.  查找所有的数字: [0-9]+[.]++[0-9]+

9.  查找所有的单词: [a-z]+

10.              查找所有的网址: http://[a-z0-9^~`_./^-^?=&]+

11.              查找行首为数字的行:%[(0-9)^t]+

12.              去掉所编辑文本中包含特定字符串的行
CTRL+R
调出来替换(Replace)窗口,选中"使用正则表达式";然后用查找 %*你的字符串*^p 替换成空内容即可.如,我当前有个文本文件,需要去掉所有包含 http://www.dbanotes.net/ 这个字符串的行,查找 %*http://www.dbanotes.net/*^p 替换成空即可.注意,^p DOS 文件类型的换行符.如果是 Unix 类型文件,则用 ^n.

13.              %1              搜索以1开头的行
     1$               
搜索以1为结尾的行

 

 

 

没有评论: