1. 程式人生 > >UE中正則表達式

UE中正則表達式

如果 不惜 http 多次 mac 刪除 替換 說明 方式

UltraEdit(後簡稱UE),是我經常使用的文本編輯軟件,其功能的強大,令我由衷地愛上了它。每天不用就全身不爽。從最開始的9。0到現在的 12。10a(本人只用到這個版本),UE都是系統重裝後必安之物。UE本身除了普通的文本編輯功能以外,對十六進制文件的編輯能力也是十分了得,由於工 作原因它十六制下的魅力我體會不大,希望有了解的XDJM們不惜文字,共享一下。不多說,下面是UE中沿用幾代的正則表達式語法。

UltraEdit風格正則表達式語法

1、%

功能說明: 匹配一行的開始位置。這個符號表示所尋找的字符在每一行的開始的位置,不包括每一行其上一行的結束字符。

2、$

功能說明:匹配一行的結束位置。這個符號表示所尋找的字符在每一行的結束的位置。這個$和上面說的“行頭”恰恰相反,它是“行尾”。

3、?

功能說明:匹配每一個字符,除了“換行符”以外。

4、*

功能說明:匹配任意個數的任何字符,除了“換行符”以外。

5、+

功能說明:匹配一個或多個所提到的字符或是表達式,至少要出現一次。不匹配重復的“換行符”。

6、++

功能說明:匹配零次或是很多次所提到的字符或表達式,不匹配重復的“換行符”。

7、^b

功能說明:匹配分頁符。

8、^p

功能說明:匹配DOS文件中的換行符。

9、^r

功能說明:匹配MAC文件中的換行符。

10、^n

功能說明:匹配UNIX文件中的換行符。

11、^t

功能說明:匹配一個Tab符。

12、[ ]

功能說明:匹配在方括號裏面的任何單個字符,可以用範圍來表示。

13、^{A^}^{B^}

功能說明:匹配表達式A或表達式B

14、^

功能說明:後面的正則表達式無效。

註意:現在使用當中也可以表示指定行的開頭。

15、^(…^)

功能說明: 匹配第1個到第9個指定的表達式,並且可以用其序號來變換位置

例如:“hello world”滿足表達式“^(h*o^) ^(w*d^)”,而表達式“^2 ^1”就可以把“hello world”替換為“world hello”。

在UltraEdit中使用正則表達式

刪除空行: 替換 %[ ^t]++^p 為 空串

刪除行尾空格: 替換 [ ^t]+$ 為 空串

刪除行首空格: 替換 %[ ^t]+ 為 空串

每行設置為固定的4個空格開頭: 替換 %[ ^t]++^([~ ^t^p]^) 為 " ^1"

每段設置為固定的4個空格開頭: 替換 %[ ^t]+ 為 " "

(如果一行是以空格開始的,則視之為一段的開始行)

將一段合並為一行: 替換 [ ^t]++^p^([~ ^t^p]^) 為 ^1

(註意: 此處假定文本是以DOS方式回車換行 - CR/LF)

去掉HTML TAG: 替換 ^{<*>^}^{<*^p*>^} 為 空串

刪除HTML中的所有<A>: 替換 <[ ]++a *[ ]++href[ ]++=*> 為 空串

刪除文本中指定的前2列字符: 替換 %?? 為 空串

在第4列後插入2列空白字符: 替換 %^(????^)^(?^) 為 "^1 ^2"

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

查找所有的單詞: [a-z]+

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

UE中正則表達式