@=”D:ProgUltraEditue32ctmn.dll”
為你的系統(tǒng)值,令存為.reg文件,導(dǎo)入注冊(cè)表即可。
REGEDIT4
[HKEY_CLASSES_ROOT*shellexContextMenuHandlersUltraEdit-32]
@="{b5eedee0-c06e-11cf-8c56-444553540000}"
[HKEY_CLASSES_ROOTCLSID{b5eedee0-c06e-11cf-8c56-444553540000}]
[HKEY_CLASSES_ROOTCLSID{b5eedee0-c06e-11cf-8c56-444553540000}InProcServer32]
@="D:ProgUltraEditue32ctmn.dll"
"ThreadingModel"="Apartment"
刪除空行的正則表達(dá)式
用UltraEdit打開文件后,選擇Search菜單的Replace命令。
在Replace對(duì)話框中,選中Regular Expression復(fù)選框,
并在Find what中輸入:%[ ^t]++^p,注意^t之前有空格。
該表達(dá)式字符含義與EditPlus的相對(duì)應(yīng)。然后,單擊Start或Replace All按鈕,進(jìn)行替換刪除空行。
編輯遠(yuǎn)程檔案
File/Ftp/ Open from FTP or Save as FTP
這一個(gè)選項(xiàng),可以讓大家通過(guò)FTP來(lái)修改server上的檔案。其中更酷的,不知道大家有沒(méi)有發(fā)覺,也可以透過(guò)ssh來(lái)修改遠(yuǎn)程的檔案。不過(guò)通過(guò)ssh這一項(xiàng)功能,是到UltraEdit10才有的功能。不過(guò)這項(xiàng)功能有潛在的危機(jī),就是同份檔案被兩個(gè)人同 時(shí)開啟修改………..請(qǐng)謹(jǐn)慎使用
搜尋,取代文件中的文字Search/ Find in Files(搜尋件中的文字) Replaces in Files(取代件中的文字),這兩個(gè)功能,可以讓用戶針對(duì)某個(gè)目錄下(包含子目錄)大量件的搜尋,取代。比如今天,某個(gè)jsp網(wǎng)頁(yè)中 include近來(lái)的檔名有錯(cuò),需要更改,難道大家還要一個(gè)檔案一個(gè)檔案的打開,然后搜尋取代文字嗎,就用這個(gè)功能 來(lái)幫你完成這些事吧。
宏定義功能
將某個(gè)快捷鍵定義成要用的宏。??梢钥焖僦貜?fù)復(fù)雜的編輯操作
強(qiáng)大的列編輯
Editpad稍遜一籌,EP和EM就差太多了。列塊的選擇,處理幾十兆甚至過(guò)百M(fèi)的文本,鼠標(biāo)選擇列塊肯定不行:d
ue提供了選擇范圍輸入行列的起始范圍就ok,不過(guò)仍然要查行數(shù)列數(shù),麻煩。用快捷鍵選擇最快
快捷鍵:Ctrl、Shift、Home、End、←、→
1、去重
如果文本中的數(shù)據(jù)是一行一行的,有重復(fù)的內(nèi)容,去重的方法是:文件——排序——高級(jí)排序/選項(xiàng),選中“刪除重復(fù)”。
2、查找后亂碼
將文件另存為“UTF-16”格式的文本。代碼頁(yè)要設(shè)置成:
高級(jí)——設(shè)置代碼頁(yè)/本地,“系統(tǒng)中已安裝的代碼頁(yè)”,選擇“936(ANSI/OEM-簡(jiǎn)體中文GBK)”;
“系統(tǒng)已安裝的地區(qū)”選擇"中文(中國(guó))中國(guó)人們共和國(guó)"。
3、查找任意漢字
4、使用正則表達(dá)式,去除空行、行尾空格
UltraEdit有兩種傳統(tǒng)形式的正則表達(dá)式:UltraEdit風(fēng)格、Unix風(fēng)格。設(shè)置在:高級(jí)——配置——搜索——正則表達(dá)式引擎。
UltraEdit風(fēng)格正則表達(dá)式:
去除空行: %[ ^t]++^p 替換為 空白(就是什么也不輸入)
去除行尾空格: [ ^t]+$ 替換為 空白
Unix風(fēng)格正則表達(dá)式:
去除空行: ^[ ]* 替換為 空白
去除行尾空格: [ ]+$ 替換為 空白
5、在UltraEdit風(fēng)格正則表達(dá)式中,有個(gè)星號(hào)(*),功能是匹配任何除換行符外所出現(xiàn)的任意數(shù)量的字符。但在Unix形式正則表達(dá)式
中卻沒(méi)有相應(yīng)的符號(hào),可以用 .* 來(lái)代替。
.
| 匹配任何除換行符之外的單個(gè)字符。不匹配重復(fù)的換行符。
|
*
| 匹配前面的字符 0 次或多次。
|
6、如果一些操作是重復(fù)性的,可以用UltraEdit的宏來(lái)完成。 我常用的是查找后刪除、或者復(fù)制。
6.1 查找后刪除
InsertMode
ColumnModeOff
HexOff
UnixReOn
Top
Loop
Find RegExp "要查詢的內(nèi)容"
IfFound
DeleteLine
EndLoop
Top
EndIf
6.2 查找后復(fù)制
InsertMode
ColumnModeOff
HexOff
UnixReOn
NewFile
PreviousWindow
Top
ClearClipboard
Loop
Find RegExp "要查詢的內(nèi)容
IfFound
Copy
NextWindow
Paste
InsertLine
PreviousWindow
EndLoop
EndIf
刪除行尾空格:替換[^t]+$為空串
刪除行首空格:替換%[^t]+為空串
每行設(shè)置為固定的4個(gè)空格開頭:替換%[^t]++^([~^t^p]^)為"^1"
每段設(shè)置為固定的4個(gè)空格開頭:替換%[^t]+為""
(如果一行是以空格開始的,則視之為一段的開始行)
將一段合并為一行:替換[^t]++^p^([~^t^p]^)為^1
(注意:此處假定文本是以DOS方式回車換行-CR/LF)
去掉HTMLTAG:替換^{<*>^}^{<*^p*>^}為空串
刪除HTML中的所有:替換<[]++a*[]++href[]++=*>為空串
刪除文本中指定的前2列字符:替換%??為空串
在第4列后插入2列空白字符:替換%^(????^)^(?^)為"^1^2"
查找所有的數(shù)字:[0-9]+[.]++[0-9]+
查找所有的單詞:[a-z]+
查找所有的網(wǎng)址:http://[a-z0-9^~`_./^-^?=&]+
下面是對(duì)UltraEdit的Help中針對(duì)查找替換使用正則表達(dá)式部分的整理,最后還有我前兩天用到的一個(gè)多行代碼查找替換的例子。
Ultraedit在使用正則表達(dá)式進(jìn)行查找替換時(shí)有兩個(gè)可使用的語(yǔ)法集合。一個(gè)是 UltraEdit 的更早的版本被使用的原來(lái)的 UltraEdit 句法。另一個(gè)是”Unix”類型的正則表達(dá)式,這個(gè)集合在ultraedit的默認(rèn)配置中是沒(méi)有啟用的,需要在配置中找到search項(xiàng),啟用Unix類型的正則表達(dá)式。
語(yǔ)法集合一:
符號(hào) 功能
% 匹配行的開始 - 顯示搜索字符串必須在行的開始,但是在所選擇的結(jié)果字符串中不包括任何行終止字符。
$ 匹配行尾 - 顯示搜索字符串必須在行尾,但是在所選擇的結(jié)果字符串中不包括任何行終止字符。
除了換行符以外匹配任何單個(gè)的字符
* 除了換行符匹配任何數(shù)量的字符和數(shù)字
^b 匹配一個(gè)分頁(yè)
^p 匹配一個(gè)換行符(CR/LF)(段)(DOS文件)
^r 匹配一個(gè)換行符(CR 僅僅)(段)(MAC 文件)
^n 匹配一個(gè)換行符 ( LF 僅僅 )( 段 )( UNIX 文件 )
^t 匹配一個(gè)標(biāo)簽字符TAB
[] 匹配任何單個(gè)的字符,或在方括號(hào)中的范圍
^{A^}^{ B^} 匹配表達(dá)式A或 B
^ 重載其后的正規(guī)表達(dá)式字符
^(^) 括或標(biāo)注為用于替換命令的表達(dá)式。
一個(gè)正則表達(dá)式最多可以有9個(gè)標(biāo)注表達(dá)式, 按正規(guī)表達(dá)式的需要而定。
相應(yīng)的替換表達(dá)式是 ^x , 替換范圍x是1-9。例如:
If ^(h*o^) ^(f*s^) matches “hello folks”,
^2 ^1 would replace it with “folks hello”.
?。╤ello folks 將被替換成 folks hello。)
注: ^ 是實(shí)際字符 ^不是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] 匹配每個(gè)小寫元音。
[,.?] 匹配一文字的 “,”,”.”或 “?”。
[0-9, a-z] 匹配任何數(shù)位,或小寫字母。
“^{John^}^{Tom^}”
這將在找John或Tom的出現(xiàn)。應(yīng)該在 2 個(gè)表達(dá)式之間沒(méi)有任何東西。
你可以在同一搜索中按如下方式組合A or B and C or D:
“^{John^}^{Tom^}^{Smith^}^{Jones^}”
這將在John or Tom 后面找 Smith or Jones。
語(yǔ)法二:”Unix”句法類型的正則表達(dá)式
符號(hào) 功能
標(biāo)記下一個(gè)字符作為一個(gè)特殊的字符。
"n" 匹配字符"n"。"n" 一個(gè)換行符或換行符字符。
^ 匹配/定位行的開始。
$ 匹配/定位行的尾。
* 匹配前面的字符零次或多次。例
+ 匹配前面的字符一次或多次。例
. 匹配除了一個(gè)換行符字符匹配任何單個(gè)的字符。
(expression)標(biāo)注用于替換命令的表達(dá)式。一個(gè)正則表達(dá)式根據(jù)需要,最多可以有9個(gè)標(biāo)注表達(dá)式。相應(yīng)的代替表達(dá)式是 x , x的范圍是 1-9 。
例如:
If (h.*o) (f.*s) matches "hello folks",
2 1 would replace it with "folks hello".
?。╤ello folks 將被替換成 folks hello。)
[xyz] 一個(gè)字符集。匹配在方括號(hào)之間的任何字符。
[^xyz] 一個(gè)否定的字符集。不匹配在方括號(hào)之間的任何字符。
d 匹配一個(gè)數(shù)字字符。等價(jià)于[0-9]。
D 匹配一個(gè)非數(shù)字字符。等價(jià)于[^0-9]。
f 匹配一個(gè)換頁(yè)字符。
匹配一個(gè)換行字符。
匹配一個(gè)回車符字符。
匹配一個(gè)標(biāo)簽TAB字符。
v 匹配一個(gè)垂直的標(biāo)簽字符。
w 匹配任何詞語(yǔ)字符包括下劃線。
W 匹配任何非詞語(yǔ)字符字符。
注: ^ 是實(shí)際字符 ^不是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] 匹配每個(gè)小寫元音。
[,.?] 匹配一文字的 “,”,”.”或 “?”。
[0-9,a-z] 匹配任何數(shù)位,或小寫字母。
[^0-9] 除了數(shù)字以外匹配任何字符 (~ 意味著”不”)
你按如下方式可以查找一個(gè)表達(dá)式A或 B :
“(John)|(Tom)”
這將在找John或Tom的出現(xiàn)。應(yīng)該在 2 個(gè)表達(dá)式之間沒(méi)有任何東西。
你可以在同一搜索中按如下方式組合A or B and C or D:
“(John|Tom) (Smith|Jones)”
這將在John or Tom 后面找 Smith or Jones。
另外:
p 匹配 CR/LF ( 作為 rn 的一樣 ) 作為DOS行結(jié)束符匹配
如果查找/替換功能中正則表達(dá)式?jīng)]有選用,則替換字段中下列字符也是有效的:
符號(hào) 功能
^^ 匹配一個(gè) “^” 字符
^s 替換為被選擇 ( 加亮 ) 活躍的文件窗口的文章。
^c 替換為剪貼板的內(nèi)容
^b 匹配一個(gè)頁(yè)裂縫
^p 匹配一個(gè)換行符 ( CR/LF )( 段 )( DOS 文件)
^r 匹配一個(gè)換行符 ( CR 僅僅 )( 段 )( MAC 文件)
^n 匹配一個(gè)換行符 ( LF 僅僅 )( 段 )( UNIX 文件)
^t 匹配一個(gè)標(biāo)簽TAB字符
下面是我要實(shí)現(xiàn)的一段代碼查詢替換的舉例
有這樣一段代碼分布在各個(gè)html文件中
<!-- 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 -->
我要把上面一段代碼替換為空,于是編寫下面的匹配規(guī)則
<!-- Copyright[^!]*[^>]*>
即完成了全部替換。
大家可以在今后的編碼中嘗試一下Ultraedit的正則表達(dá)式查找替換功能,非常簡(jiǎn)單快捷!
聯(lián)系客服