UltraEdit文本編輯利器
最近用到UltraEdit,從網上搜了一篇文章,鏈接是:http://blog.ednchina.com/sh_jiajia/187745/message.aspx
UltraEdit在使用正則表達式進行查找替換時有兩個可使用的語法集合。一個是 UltraEdit 的更早的版本被使用的原來的 UltraEdit 句法。另一個是“Unix”類型的正則表達式,這個集合在UltraEdit的默認配置中是沒有啟用的,需要在配置中找到search項,啟用Unix類型的正則表達式。
語法集合一:
符號 功能
% 匹配行的開始 - 顯示搜索字符串必須在行的開始,但是在所選擇的結果字符串中不包括任何行終止字符。
$ 匹配行尾 - 顯示搜索字符串必須在行尾,但是在所選擇的結果字符串中不包括任何行終止字符。
? 除了換行符以外匹配任何單個的字符
* 除了換行符匹配任何數量的字符和數字
+ 前一字符匹配一個或多個,但至少要出現一個
++ 前一字符匹配零個或多個,但至少要出現一個
^b 匹配一個分頁
^p 匹配一個換行符(CR/LF)(段)(DOS文件)
^r 匹配一個換行符(CR 僅僅)(段)(MAC 文件)
^n 匹配一個換行符 ( LF 僅僅 )( 段 )( UNIX 文件 )
^t 匹配一個標簽字符TAB
[] 匹配任何單個的字符,或在方括號中的范圍
^{A^}^{ B^} 匹配表達式A或 B
^ 重載其后的正規表達式字符
^(^) 括或標注為用于替換命令的表達式。
語法集合二:“Unix”句法類型的正則表達式
符號 功能
\ 標記下一個字符作為一個特殊的字符。
"n" 匹配字符"n"。"n" 一個換行符或換行符字符。
^ 匹配/定位行的開始。
$ 匹配/定位行的尾。
* 匹配前面的字符零次或多次。例
+ 匹配前面的字符一次或多次。例
. 匹配除了一個換行符字符匹配任何單個的字符。
(expression)標注用于替換命令的表達式。一個正則表達式根據需要,最多可以有9個標注表達式。相應的代替表達式是 x , x的范圍是 1-9 。
例如:
If (h.*o) (f.*s) matches "hello folks",
2 1 would replace it with "folks hello".
(hello folks 將被替換成 folks hello。)
[xyz] 一個字符集。匹配在方括號之間的任何字符。
[^xyz] 一個否定的字符集。不匹配在方括號之間的任何字符。
\d 匹配一個數字字符。等價于[0-9]。
\D 匹配一個非數字字符。等價于[^0-9]。
\f 匹配一個換頁字符。
\n 匹配一個換行字符。
\r 匹配一個回車符字符。
\s 匹配任何空白的空格, 標簽, 換頁, 包括空格等等,但不匹配換行符。
\S 匹配任何非空白的字符,但不匹配換行符。
\t 匹配一個標簽TAB字符。
\v 匹配一個垂直的標簽字符。
\w 匹配任何詞語字符包括下劃線。
\W 匹配任何非詞語字符字符。
在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^~`_./^-^?=&]+
作者:Tyler Ning
出處:http://www.rzrgm.cn/tylerdonet/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,如有問題,請微信聯系冬天里的一把火
浙公網安備 33010602011771號