正則表達式 (UltraEdit Syntax):
% 匹配行首 - 代表要搜索的字符串必定在行首.
$ 匹配行尾 - 代表要搜索的字符串必定在行尾
? 匹配除換行符外的任一單個字符.
* 匹配任意個數的字符出現任意次數(不包括換行符)
+ 匹配前導字符或者表達式出現一次或者更屢次(不包括換行符)
++ 匹配前導字符或者表達式不出現或者出現一次以上(不包括換行符)
^b 匹配頁中斷符
^p 匹配DOS文件的換行符
^r 匹配MAC文件的換行符(CR Only)
^n 匹配UNIX文件的換行符 (LF Only)
^t 匹配一個製表符
[ ] 匹配方括號中的單個的字符
刪除空行: 替換 %[ ^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^~`_./^-^?=&]+
注意: 替換的時候須要勾選使用正則表達式選項
在UltraEdit配置中的正則表達式引擎中挑上使用UltraEdit風格,13版本使用Unix風格不能使用正則表達式分組功能
從Ultraedit8.0一直使用到如今,感受這個東東確實不錯。現將一些基本的經驗總結以下,與你們共享;歡迎有興趣的朋友前來補充。
Tip 0: 沒有註冊碼,如何有效使用Ultraedit呢?
不少人當即想到使用crack版,可實際追究起來,那是違法的事情。實際上,Ultraedit並無把路子徹底堵死。咱們可使用一些小技巧來屏蔽掉這個問題。修改ultraedit的快捷方式,將命令行改成:E:uedit9UEDIT32.EXE p:,其中p:必須是你的機器上不存在的分驅,這樣,就不會有試用時間結束的問題了。
Tip 1: 如何去掉所編輯文本中包含特定字符串的行?
這則技巧是在UltraEdit的幫助文件裏提到.CTRL+R 調出來替換(Replace)窗口,選中"使用正則表達式";而後用查找 %*你的字符串*^p 替換成空內容便可.如,我當前有個文本文件,須要去掉全部包含 http://www.baidu.net/ 這個字符串的行,查找 %*http://www.baidu.net/*^p 替換成空便可.注意,^p 是 DOS 文件類型的換行符.若是是 Unix 類型文件,則用 ^n.
Tip 2: 如何在行末添加特定字符,好比逗號?
有了上面的經驗(其實我第一次是從同事那裏學到的),CTRL+R 調出來替換(Replace)窗口,選中"使用正則表達式".而後能夠查找 ^p(或者^n,若是是Unix 文件),用 ,^p(或者,^n)進行"所有替換"便可.補充一點,若是是 MAC(Apple) 類型文件,則換行符號爲 ^r .
Tip 3: 如何刪除空行?
參考上面兩個例子,查找 ^p$ 而後替換爲空便可.
看來,正則表達式須要學習一下嘍.
Tip 4: 編輯文件如何加入時間戳 ?
F7 快捷鍵便可.你試試看?
Tip 5: 爲什麼 拷貝(Copy)/粘貼(Paste)功能不能用了?
不怕你們笑話,我有幾回使用 UltraEdit 的過程當中發現拷貝與粘貼的內容是不匹配的.不知因此然,乾脆從新啓動了筆記本.今天翻看手冊才恍然大悟:UltraEdit有10個剪切板(clipboard),分別用Ctrl+0 - Ctrl+9 切換. Ctrl+0 是 Windows 的,其餘則爲用戶自定義的.我在使用的過程當中錯調用了 CTRL+n, 結果內容就有問題了.你遇到過沒?
Tip 6: 即便是打開小文件也有遲延?
這是我遇到過的問題.每次打開文件的時候總有幾秒鐘的耽擱.個人機器性能可不算差.怎麼回事? 網絡打印機搞得鬼! 打開"高級"->"設置"->"編輯器"->"高級",看看是否是選中了"載入/恢復打印機設置"?若是是的話,去掉(不一樣的版本/漢化與否可能該位置所在有差異).
Tip 7: 刪除當前行內容 CTRL+e
Tip 8: 你按一下快捷鍵ALT+c試試,變爲列編輯模式,能夠一次輸入多行內容,只要你選好行範圍,編輯整齊的數據表很是合適。
Tip 9: 光標位於某一行,按Ctrl+F2試試,有了標籤了,多設幾個,按住F2,它會往你設定的標籤處跳來跳去,很好玩。
Tip 10: 暫時沒想出來,有興趣的前來補充。
更多內容整理中......
--如何在UltraEdit中配置Java編譯器和運行指令:
方法:在Advanced -- Tool configuration 菜單的對話框裏
1,配置javac
在command line裏輸入:c:jdk1.3binjavac %f
注意:這裏的javac路徑你要按你本身的來指定;%f是指當前活動文檔的全文件名,即「文件名.擴展名",
由於java程序在編譯時必須帶上擴展名。若是你用了%F(大寫)是不對的,它只表示文件名而不帶擴展名
(對於java運行命令是這樣的)。在Menu Item Name 裏輸入javac ,它出如今菜單裏,這樣你就知道它是
用來編譯的。而後選擇output to list box 和 capture output,這樣當編譯錯誤的時候你就能夠在源代碼
的下面的output窗口裏看到錯誤信息了。
2,配置不帶參數的java運行命令
在command line裏輸入:java %n, 或者java %F,這兩個有時候不同,看你的環境怎麼配置了,我是使用的前一個。
在Menu Item Name 裏輸入: java -no parameter
而且選擇output to list box 和 capture output ,這樣當運行的時候,運行結果顯示在output窗口裏。
3,配置帶參數的java運行命令
在command line裏輸入:java %n%modify%
在Menu Item Name 裏輸入: java -parameter,這樣當你運行的時候,它會有一個對話框要求你輸入參數
不少朋友都用過或者正在用UltraEdit,這個編輯器陪伴我也好幾年了,從不少地方影響着我寫代碼的快捷鍵習慣,Ultraedit提供了很是豐富的編輯功能,其中很是重要的查找和替換功能必定你們都用過,Ultraedit提供的查找替換功能很是方便和強大,能夠在單獨文件裏面查找替換,也能夠在多個文件、多個目錄裏面進行查找替換。而咱們在使用這些查找替換功能的時候,通常都是針對某個字符串進行,前兩天我要對一個目錄下(包含子目錄)全部的html文件中某一段代碼進行查找替換,一會兒不知道怎麼操做了,因爲長期寫程序用到正則表達式,因而猜測具有如此強大功能的Ultraedit必定也有這樣相似的匹配功能,因而點擊Help一看,果真不出所料,Ultraedit支持基本的正則表達式匹配查找和替換功能,這能知足咱們幾乎所有的須要了。
下面是對UltraEdit的Help中針對查找替換使用正則表達式部分的整理,最後還有我前兩天用到的一個多行代碼查找替換的例子。
Ultraedit在使用正則表達式進行查找替換時有兩個可以使用的語法集合。一個是 UltraEdit 的更早的版本被使用的原來的 UltraEdit 句法。另外一個是」Unix」類型的正則表達式,這個集合在ultraedit的默認配置中是沒有啓用的,須要在配置中找到search項,啓用Unix類型的正則表達式。
語法集合一:
符號 功能
% 匹配行的開始 - 顯示搜索字符串必須在行的開始,可是在所選擇的結果字符串中不包括任何行終止字符。
$ 匹配行尾 - 顯示搜索字符串必須在行尾,可是在所選擇的結果字符串中不包括任何行終止字符。
? 除了換行符之外匹配任何單個的字符
* 除了換行符匹配任何數量的字符和數字
+ 前一字符匹配一個或多個,但至少要出現一個
++ 前一字符匹配零個或多個,但至少要出現一個
^b 匹配一個分頁
^p 匹配一個換行符(CR/LF)(段)(DOS文件)
^r 匹配一個換行符(CR 僅僅)(段)(MAC 文件)
^n 匹配一個換行符 ( LF 僅僅 )( 段 )( UNIX 文件 )
^t 匹配一個標籤字符TAB
[] 匹配任何單個的字符,或在方括號中的範圍
^{A^}^{ B^} 匹配表達式A或 B
^ 重載其後的正規表達式字符
^(^) 括或標註爲用於替換命令的表達式。
一個正則表達式最多能夠有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。)
注: ^ 是實際字符 ^不是Ctl + 鍵值。
例如:
m?n 匹配 「man」,」men」,」min」 但不匹配 「moon」.
t*t 匹配 「test」,」tonight」 和 「tea time」 (the 「tea t」 portion) 但不匹配 「tea
time」 (newline between 「tea 」 and 「time」).
Te+st 匹配 「test」,」teest」,」 teeeest 「等等。可是不匹配 「tst」。
[aeiou] 匹配每一個小寫元音。
[,.?] 匹配一文字的 「,」,」.」或 「?」。
[0-9, a-z] 匹配任何數位,或小寫字母。
[~0-9] 除了數字之外匹配任何字符 (~ 意味着」不」)
你按以下方式能夠查找一個表達式A或 B :
「^{John^}^{Tom^}」
這將在找John或Tom的出現。應該在 2 個表達式之間沒有任何東西。
你能夠在同一搜索中按以下方式組合A or B and C or D:
「^{John^}^{Tom^}^{Smith^}^{Jones^}」
這將在John or Tom 後面找 Smith or Jones。
語法二:」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 匹配任何非詞語字符字符。
注: ^ 是實際字符 ^不是Ctl + 鍵值。
例如:
m.n 匹配 「man」,」men」,」min」 但不匹配 「moon」.
t+t 匹配 「test」,」tonight」 和 「tea time」 (the 「tea t」 portion) 但不匹配 「tea
time」 (newline between 「tea 」 and 「time」).
Te*st 匹配 「test」,」teest」,」 teeeest 「等等。可是不匹配 「tst」。
[aeiou] 匹配每一個小寫元音。
[,.?] 匹配一文字的 「,」,」.」或 「?」。
[0-9,a-z] 匹配任何數位,或小寫字母。
[^0-9] 除了數字之外匹配任何字符 (~ 意味着」不」)
你按以下方式能夠查找一個表達式A或 B :
「(John)|(Tom)」
這將在找John或Tom的出現。應該在 2 個表達式之間沒有任何東西。
你能夠在同一搜索中按以下方式組合A or B and C or D:
「(John|Tom) (Smith|Jones)」
這將在John or Tom 後面找 Smith or Jones。
另外:
p 匹配 CR/LF ( 做爲 rn 的同樣 ) 做爲DOS行結束符匹配
若是查找/替換功能中正則表達式沒有選用,則替換字段中下列字符也是有效的:
符號 功能
^^ 匹配一個 「^」 字符
^s 替換爲被選擇 ( 加亮 ) 活躍的文件窗口的文章。
^c 替換爲剪貼板的內容
^b 匹配一個頁裂縫
^p 匹配一個換行符 ( CR/LF )( 段 )( DOS 文件)
^r 匹配一個換行符 ( CR 僅僅 )( 段 )( MAC 文件)
^n 匹配一個換行符 ( LF 僅僅 )( 段 )( UNIX 文件)
^t 匹配一個標籤TAB字符
下面是我要實現的一段代碼查詢替換的舉例
有這樣一段代碼分佈在各個html文件中
html
複製代碼java
代碼以下:正則表達式
<!-- Copyright ?2005. toplee Ltd -->
<style>
A.applink:hover {border: 2px dotted #DCE6F4;padding:2px;background-color:#ffff00;color:green;text-decoration:none}
A.applink {border: 2px dotted #DCE6F4;padding:2px;color:#2F5BFF;background:transparent;text-decoration:none}
A.info {color:#2F5BFF;background:transparent;text-decoration:none}
A.info:hover {color:green;background:transparent;text-decoration:underline}
</style>
<div style='BORDER: 1px solid #DCE6F4; MARGIN-TOP: 20px; MARGIN-BOTTOM: 20px; MARGIN-LEFT: 5px;
.... 省略若干行....
<!-- /Copyright ?2005. toplee Ltd --> express
我要把上面一段代碼替換爲空,因而編寫下面的匹配規則
<!– Copyright[^!]*[^>]*>
即完成了所有替換。
經常使用的正則表達式
刪除空行:替換%[^t]++^p爲空串
刪除行尾空格:替換[^t]+$爲空串
刪除行首空格:替換%[^t]+爲空串
每行設置爲固定的4個空格開頭:替換%[^t]++^([~^t^p]^)爲」^1″
每段設置爲固定的4個空格開頭:替換%[^t]+爲」"
(若是一行是以空格開始的,則視之爲一段的開始行)
將一段合併爲一行:替換[^t]++^p^([~^t^p]^)爲^1
(注意:此處假定文本是以DOS方式回車換行-CR/LF)
去掉HTMLTAG:替換^{<*>^}^{<*^p*>^}爲空串
刪除HTML中的全部:替換<[]++a*[]++href[]++=*>爲空串
刪除文本中指定的前2列字符:替換%??爲空串
在第4列後插入2列空白字符:替換%^(????^)^(?^)爲」^1^2″
查找全部的數字:[0-9]+[.]++[0-9]+
查找全部的單詞:[a-z]+
查找全部的網址:http://[a-z0-9^~`_./^-^?=&]+
注意:替換的時候須要勾選使用正則表達式選項網絡