UltraEdit UE 中的正則表達式

一直在用ue,不過都是當記事本來用的。大才小用了。最近總是要用到查找替換,一般都是在網上搜一些來用,今天看了一下ue自己的幫助文件。原來說明的很詳細。發來上,記錄一下。

UltraEdit 允許在搜索菜單下面列出的大多數搜索和替換功能中使用正則表達式。

 

正則表達式允許在一次操作中執行多個組合搜索替換能。

 

這裏有兩個可以使用的語法集。下面的第一個表顯示用於早期 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 匹配一個製表符

 

注意 – ^ 這裏所涉及的字符“^”不是控制鍵 + 值。

發佈了225 篇原創文章 · 獲贊 10 · 訪問量 72萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章