Chinaunix首页 | 论坛 | 博客
  • 博客访问: 339260
  • 博文数量: 85
  • 博客积分: 1420
  • 博客等级: 上尉
  • 技术积分: 787
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-10 09:02
文章分类

全部博文(85)

文章存档

2011年(5)

2010年(51)

2009年(29)

我的朋友

分类: WINDOWS

2010-10-07 17:47:05

正则表达式允许在一次操作中执行多个组合搜索和替换功能。

 

这里有两个可以使用的语法集。下面的第一个表显示用于早期 UltraEdit 的原始 UltraEdit 语法。第二个表显示可选的“Unix”样式的正则表达式。这可以从配置段启用。

 

正则表达式 (UltraEdit 语法):

 

符号功能
%匹配行首 – 表示搜索字符串必须在行首,但不包括任何选定的结果字符中的行终止字符。
$匹配行尾 – 表示搜索字符串必须在行尾,但不包括任何选定的结果字符中的行终止字符。
?匹配任何除换行符的字符。
*匹配任何除换行符外所出现的任意数量的字符。
+匹配一个或多个前面的字符/表达式。必须找到至少一个出现的字符。不匹配重复的换行符。
++0 次或多次匹配前面的字符/表达式。不匹配重复的换行符。
^b匹配一个分页符。
^p匹配一个换行符 (CR/LF) (段落) (DOS 文件)
^r匹配一个换行符 (仅 CR) (段落) (MAC 文件)
^n匹配一个换行符 (仅 LF) (段落) (UNIX 文件)
^t匹配一个制表符
[ ]匹配任何括号中的单个字符或范围
^{A^}^{B^}匹配表达式 A 或 B
^忽略其后的正则表达式字符
^(*^)在表达式加上括号或标签在替换命令中使用。正则表达式中可以有 9 个表达式标签,数字根据它们在正则表达式中的次序确定数字。

相应的替换表 达式是 ^x,x 的范围是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配“hello folks”,那么^2 ^1 表示将用“folks hello”替换它。

 

注意 – ^ 这里涉及的字符“^”不是控制键 + 值。

 

例如:

m?n 匹配“man”、“men”、“min”,但不匹配“moon”。

 

t*t 匹配“test”、“tonight”和“tea time”中的“tea t”部分,但不匹配“tea

time” (“tea ”和“time”之间有换行)。

 

Te+st 匹配“test”、“teest”、“teeeest”等,但不匹配“tst”。

 

[aeiou] 匹配每个元音小写字母

[,.?] 匹配文字“,”、“.”或“?”。

[0-9a-z] 匹配任何数字或小写字母

[~0-9] 匹配除数字外的任何字符 (~ 表示不匹配其后的内容)

 

你可以搜索象下面一样的表达式 A 或 B:

 

“^{John^}^{Tom^}

 

这将搜索 John 或 Tom。在两个表达式之间应该没有任何其它内容。

 

你可以在同一次搜索象下面一样组合 A 或 B 和 C 或 D:

 

“^{John^}^{Tom^} ^{Smith^}^{Jones^}”

 

这将搜索后面跟随了 Smith 或 Jones 的 John 或 Tom。

 

下面的表显示“Unix”样式的正则表达式语法。

 

正则表达式 (Unix 语法):

 

符号功能
\表示下一个字符有特殊含义。“n”表示匹配字符“n”,“\n”匹配一换行符。看下面的例子 (\d、\f、\n 等)。
^匹配/停驻行首。
$匹配/停驻行尾。
*匹配前面的字符 0 次或多次。
+匹配前面的字符一次或多次。不匹配重复的换行符。
.匹配任何除换行符之外的单个字符。不匹配重复的换行符。
(表达式)在表达式加上括号或标签在替换命令中使用。正则表达式中可以有 9 个表达式标签,数字根据它们在正则表达式中的次序确定数字。

相应的替换表 达式是 ^x,x 的范围是 1-9。例如: 如果 ^(h*o^) ^(f*s^) 匹配“hello folks”,那么^2 ^1 表示将用“folks hello”替换它。

[xyz]字符集,匹配任何括号间的字符。.
[^xyz]排除字符集。匹配任何不在括号间的字符。
\d匹配一个数字字符。等同于 [0-9]。
\D匹配一个非数字字符,等同于 [^0-9]。
\f匹配一个换页符。
\n匹配一个换行符。
\r匹配一个回车符。
\s匹配任何包含空格、制表符等不会显示的字符,但不匹配换行符。
\S匹配任何非空白区域 (显示字符) 的字符,但不匹配换行符。
\t匹配一个制表符。
\v匹配一个垂直制表符。
\w匹配任何包含下划线的词语。
\W匹配任何非词语的字符。
\p匹配 CR/LF (等同于 \r\n),用来匹配 DOS 行终止符。

 

注意 – ^ 这里所涉及的字符“^”不是控制键 + 值。

 

例如:

m.n 匹配“man”、“men”、“min”,但不匹配“moon”。

 

Te+st 匹配“test”、“teest”、“teeeest”等,但不匹配“tst”。

 

Te*st 匹配“test”、“teest”、“teeeest”等,还有“tst”。

 

[aeiou] 匹配每个元音小写字母

[,.?] 匹配文字“,”、“.”或“?”。

[0-9a-z] 匹配任何数字或小写字母

[^0-9] 匹配除数字外的任何字符 (~ 表示不匹配其后的内容)

 

你可以象下面一样的表达式 A 或 B 进行搜索:

 

“(John|Tom)”

 

这将搜索 John 或 Tom。在两个表达式之间应该没有任何其它内容。

 

你可以在同一次搜索象下面一样组合 A 或 B 和 C 或 D:

 

“(John|Tom) (Smith|Jones)”

 

这将搜索 Smith 或 Jones 以及跟随在后面的 John 或 Tom。

 

如果在查找/替换中 没有选择使用正则表达式,在替换对 象中下列特殊字符同样有效:

 

符号功能
^^匹配字符“^”
^s表示活动文件窗口中选定 (加亮) 的文字。
^c表示剪贴表的内容。
^b匹配一个分页符。
^p匹配一个换行符 (CR/LF) (段落) (DOS 文件)
^r匹配一个换行符 (仅 CR) (段落) (MAC 文件)
^n匹配一个换行符 (仅 LF) (段落) (UNIX 文件)
^t匹配一个制表符

 

注意 – ^ 这里所涉及的字符“^”不是控制键 + 值。

阅读(1755) | 评论(0) | 转发(0) |
0

上一篇:在线迁移oracle数据文件

下一篇:exp 和imp

给主人留下些什么吧!~~