在UltraEdit的查找和替換中使用正則表達式_第1頁
在UltraEdit的查找和替換中使用正則表達式_第2頁
在UltraEdit的查找和替換中使用正則表達式_第3頁
在UltraEdit的查找和替換中使用正則表達式_第4頁
在UltraEdit的查找和替換中使用正則表達式_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、在UltraEdit的查找和替換中使用正則表達式 很多朋友都用過或者正在用UltraEdit,這個編輯器陪伴我也好幾年了,從很多地方影響著我寫代碼的快捷鍵習慣,Ultraedit提供了非常豐富的編輯功能,其中非常重要的查找和替換功能一定大家Ultraedit提供的查找替換功能非常方便和強大,可以在單獨文件里面查找替換,也可以在多個文件、多個目錄里面進行查找替換。而我們在使用這些查找替換功能的時候,一般都是針對某個字符串進行,前兩天我要對一個目錄下(包含子目錄)所有的html文件中某一段代碼進行查找替換,一下子不知道怎么操作了,由于長期寫程序用到正則表達式,于是猜想具備如此強大功能的Ultrae

2、dit一定也有這樣類似的匹配功能,于是點擊Help一看,果然不出所料,Ultraedit支持基本的正則表達式匹配查找和替換功能,這能滿足我們幾乎全部的需要了。 下面是對UltraEdit的Help中針對查找替換使用正則表達式部分的整理,最后還有我前兩天用到的一個多行代碼查找替換的例子。Ultraedit在使用正則表達式進行查找替換時有3個可使用的語法集合。1、Perl 兼容正則表達式:如果選中該選項,則編輯器將基于 Boost C+ 庫使用 Perl 樣式的正則表達式(當在查找/替換對話框里選中正則表達式時)。2、UltraEdit 樣式正則表達式:如果選中該選項,則編輯器將在查找/替換對話框

3、里選中正則表達式時使用 UltraEdit 樣式的正則表達式。3、UNIX 樣式正則表達式:如果選中該選項,則編輯器將在查找/替換對話框里選中正則表達式時使用 UNIX 樣式的正則表達式。如圖: 用UltraEdit打開文本,使用CtrlR彈出替換對話框,鉤選"正則表達式"和對應正則語法(UltraEdit 樣式正則表達式),搜索內(nèi)容中輸入 *1FA4C5*p ,替換為rn(回車換行)即可,點擊全部替換后,則所有包含"1FA4C5"字樣的行都被刪除,并替換成rn(回車換行)。如果不鉤選"正則表達式",則只是搜索并替換字符串*1FA4C

4、5*p 啦。選擇自己喜好的正則表達式類型,不同的引擎語法不同,比如Perl兼容的正則表達式,回車是r,而在UltraEdit風格的以及Unix兼容的回車則分別是p和n,下面以UltraEdit風格來說明。 UltraEdit 語法的正則表達式:%   匹配行首 - 表示搜索字符串必須在行首,但不包括任何選定的結果字符中的行終止字符。$   匹配行尾 - 表示搜索字符串必須在行尾,但不包括任何選定的結果字符中的行終止字符。?   匹配任何除換行符的字符。*   匹配任何除換行符外所出現(xiàn)的任意數(shù)量的字符。+ 

5、  匹配一個或多個前面的字符/表達式。必須找到至少一個出現(xiàn)的字符。不匹配重復的換行符。+   0 次或多次匹配前面的字符/表達式。不匹配重復的換行符。b   匹配一個分頁符。p   匹配一個換行符 (CR/LF) (段落) (DOS 文件)r   匹配一個換行符 (僅 CR) (段落) (MAC 文件)n   匹配一個換行符 (僅 LF) (段落) (UNIX 文件)t   匹配一個制表符    匹配任何括號中的單個字符或范圍AB &#

6、160; 匹配表達式 A 或 B   忽略其后的正則表達式字符(*)    在表達式加上括號或標簽在替換命令中使用。正則表達式中可以有 9 個表達式標簽,數(shù)字根據(jù)它們在正則表達式中的次序確定數(shù)字。 相應的替換表達式是 x,x 的范圍是 1-9。例如: 如果 (h*o) (f*s) 匹配“hello folks”,那么2 1 表示將用“folks hello”替換它。rn 回車換行 ;t制表符;   空格;" 引號; ; 分號;注: 是實際字符 不是Ctl + 鍵值。例如:m?n 匹配 “man”,”men”,”mi

7、n” 但不匹配 “moon”.t*t 匹配 “test”,”tonight” 和 “tea time” (the “tea t” portion) 但不匹配 “teatime” (newline between “tea ” and “time”).Te+st 匹配 “test”,”teest”,” teeeest “等等。但是不匹配 “tst”。aeiou 匹配每個小寫元音。,.? 匹配一文字的 “,”,”.”或 “?”。0-9, a-z 匹配任何數(shù)位,或小寫字母。0-9 除了數(shù)字以外匹配任何字符 ( 意味著”不”)你按如下方式可以查找一個表達式A或 B :“JohnTom”這將在找John

8、或Tom的出現(xiàn)。應該在 2 個表達式之間沒有任何東西。你可以在同一搜索中按如下方式組合A or B and C or D:“JohnTomSmithJones”這將在John or Tom 后面找 Smith or Jones。"Unix"句法類型的正則表達式符號        功能          標記下一個字符作為一個特殊的字符。"n"    

9、0;    匹配字符"n"。"n" 一個換行符或換行符字符。           匹配/定位行的開始。$           匹配/定位行的尾。*           匹配前面的字符零次或多次。例+  

10、0;        匹配前面的字符一次或多次。例.           匹配除了一個換行符字符匹配任何單個的字符。(expression)標注用于替換命令的表達式。一個正則表達式根據(jù)需要,最多可以有9個標注表達式。相應的代替表達式是 x , x的范圍是 1-9 。例如:If (h.*o) (f.*s) matches "hello folks", 2 1 would replace it with &quo

11、t;folks hello".(hello folks 將被替換成 folks hello。)xyz       一個字符集。匹配在方括號之間的任何字符。xyz      一個否定的字符集。不匹配在方括號之間的任何字符。d          匹配一個數(shù)字字符。等價于0-9。D          匹配

12、一個非數(shù)字字符。等價于0-9。f          匹配一個換頁字符。n          匹配一個換行字符。r          匹配一個回車符字符。s          匹配任何空白的空格, 標簽, 換頁, 包括空格等等,但不匹配換行符

13、。S          匹配任何非空白的字符,但不匹配換行符。t          匹配一個標簽TAB字符。v          匹配一個垂直的標簽字符。w          匹配任何詞語字符包括下劃線。W   

14、;       匹配任何非詞語字符字符。注: 是實際字符 不是Ctl + 鍵值。例如:m.n 匹配 “man”,”men”,”min” 但不匹配 “moon”.t+t 匹配 “test”,”tonight” 和 “tea time” (the “tea t” portion) 但不匹配 “teatime” (newline between “tea ” and “time”).Te*st 匹配 “test”,”teest”,” teeeest “等等。但是不匹配 “tst”。aeiou 匹配每個小寫元音。,.? 匹配一文字的 “,”,

15、”.”或 “?”。0-9,a-z 匹配任何數(shù)位,或小寫字母。0-9 除了數(shù)字以外匹配任何字符 ( 意味著”不”)你按如下方式可以查找一個表達式A或 B :“(John)|(Tom)”這將在找John或Tom的出現(xiàn)。應該在 2 個表達式之間沒有任何東西。你可以在同一搜索中按如下方式組合A or B and C or D:“(John|Tom) (Smith|Jones)”這將在John or Tom 后面找 Smith or Jones。另外:p 匹配 CR/LF ( 作為 rn 的一樣 ) 作為DOS行結束符匹配如果查找/替換功能中正則表達式?jīng)]有選用,則替換字段中下列字符也是有效的:符號 功能

16、 匹配一個 “” 字符s 替換為被選擇 ( 加亮 ) 活躍的文件窗口的文章。c 替換為剪貼板的內(nèi)容b 匹配一個頁裂縫p 匹配一個換行符 ( CR/LF )( 段 )( DOS 文件)r 匹配一個換行符 ( CR 僅僅 )( 段 )( MAC 文件)n 匹配一個換行符 ( LF 僅僅 )( 段 )( UNIX 文件)t 匹配一個標簽TAB字符下面是我要實現(xiàn)的一段代碼查詢替換的舉例我想把一個.lrc文件中的漢字去掉:ti:046ar:Book Ial:english900la:zhby:00:00.004 Identifying objects.辨別物品00:00.0000:00.01What a

17、re these? 這些是什么?00:01.93Those are books. 那些是書。00:03.87Where are the books? 那些書在哪兒?00:06.13There they are. 在那兒。00:08.68These are my pencils. 這些是我的鉛筆。00:12.00Where are your pens? 你的那些鋼筆在哪兒?00:14.85They're over there. 在那里。00:17.48Are these your pens? 這些是你的鋼筆嗎?00:20.04Yes,they are. 是我的。00:22.63Those

18、 are mine. 那些是我的。00:25.39These are your books,aren't they? 這些書是你的,對不對?00:28.35No,they aren't. 不,不是。00:31.07They're not mine. 不是我的。00:33.39These are mine,and those are yours. 這些是我的,而那些是你的。00:35.57Those aren't your pens,are they? 那些鋼筆不是你的,對吧?00:36.38點"搜索"->"替換",選中"正則表達式"查找:(/./?) ?+$替換為:1點“全部替換”,完成。大家可以在今后的編碼中嘗試一下Ultraedit的正則表達式查找替換功能,非常簡單快捷刪除空行:  本文關鍵字:在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論