選項操作
如您選中「套用規則運算式」選項方塊,將可在尋找和取代以及以下的批量取代功能中套用行業標準規則運算式。
選用此選項後「比對全詞」與「套用特殊字元」選項將隱藏,但大小寫視為相異選項仍保留。
隱藏「比對全詞」選項是因為標準規則運算式中已有相關開關,且功能更為精細可控。套用規則運算式時,如果您在一個單字的左右兩邊加「\b」開關(此開關指單字的邊界),如在 word 兩邊同時加「\b」後,運算式變為「\bword\b」),則表示比對 word 全詞。不過您也可以根據自己的需要只在一邊加,如「\bword」可以比對「word」和「words」。還有一個相關的開關是大寫的「\B」,表示非單字邊界。如「word\B」可以比對單字「words」,但不比對「word」。
隱藏「套用特殊字元」是因為「套用特殊字元」功能是本軟體的自有功能,規則運算式包含了「套用特殊字元」的所有內容,所以此選項不必再保留。
基本使用
規則運算式是一種具有相當複雜度的專業技術,但也具有極其強大的功能。對於一個未曾專門學習過規則運算式的普通人,您一般需要花半天到兩整天時間才能粗通它的使用。相關內容可以寫成一本 N 多頁的小書才能寫全,我們也不打算在此提供詳細說明。後面會附一個網上的規則運算式教程及索引清單,有興趣的使用者可以自行存取學習。
我們舉例說明規則運算式的使用。
以下是一些最基本、最常用的規則運算式運算子:
例 1 比對包含有如「[StudentA02]」形式的標籤的行。具體地說,左右有方括號「[」和「]」,括號內開始的字串是 Student,後面有一個大寫字母和 2 個數字(01-99),這樣的行如:
學生 [StudentA02] 上午上數學課。 學生 [StudentC93] 早上打掃衛生。
我們假設需要搜尋的內文中全部都是有效字串,沒有形如 [StudentN00](最後兩位數字為 00)的無效字串,那麼就可以不用考慮存在錯誤的可能性,簡單地以以下的運算式進行搜尋:
^.*?\[Student[A-Z][0-9][0-9]\].*?\n
例 2 a 比對不含有「student」的行:
(?!.*student)^.*$
以上運算式用到的語法是「(?!exp)」,比對後面跟的不是「exp」的位置。此用法在後面列出的《規則運算式 30 分鐘入門教程》 中有介紹。此比對可以認為是以下比對的簡化版:
b 比對包含「teacher」,但不含有「student」的所有行:
(?!.*student)^.*?teacher.*?$
例 3 a 比對內容為「Start Line」的行及往前的所有行:
\A(.*?\n){2,}Start Line\n
b 比對從內容為「End Line」的行及往後的所有行:
^End Line(.*?\n){2,}.*?\Z
以上運算式用到的語法是「(?!exp)」,比對後面跟的不是「exp」的位置。此用法在以下教程中提到。
例 4 a 比對以單字「and」開頭,以單字「whose」結尾,中間包含 2 個任意單字(由字母+數字組成)的行:
^.*?\band \w+ \w+ whose\b.*?\n
b 比對以單字「and」開頭,以單字「whose」結尾,中間包含 0-5 個任意單字(由字母+數字組成)的行。如果中間的單字數為 0,即指含「and whose」的行:
^.*?\band (\w+ ){0,5}whose\b.*?\n
規則運算式精選教程
請勿被以下教程標題中的「30 分鐘」字樣所誤導。粗通規則運算式的精細使用一般需要半天到兩整天的時間。至於完全精通...那時間海了去了...當然一般也無此必要。不過您可以先找您喜歡的少量主要功能使用,這樣很快就能上手了。
《規則運算式 30 分鐘入門教程》 很好的中文入門教程,對於規則運算式的初學者,30 分鐘肯定不夠,正常情況下需要半天到一天才能基本弄懂。
原網址: http://deerchao.net/tutorials/regex/regex.htm 在谷歌上尋找: 在百度上尋找:
《The 30 Minute Regex Tutorial》(英文版) 英文教程。
原網址: http://www.codeproject.com/KB/dotnet/regextutorial.aspx 在谷歌上尋找:
《Introduction to Regular Expressions》(英文版) 英文教程,微軟出的。
原網址: http://msdn.microsoft.com/en-us/library/28hw3sce 在谷歌上尋找: 最重要的部分(規則運算式語法): http://msdn.microsoft.com/en-us/library/ae5bf541.aspx
本軟體規則運算式引擎的模式設定
指定大小寫:使用者可選。 多行模式:指定採用。 單行模式:指定不採用。
不同規則運算式引擎的主幹功能是一樣的,但在某些偏枝細節上可能有微小的差異。本軟體所用規則運算式引擎也一樣,在個別偏枝功能上可能會和這些教程中寫得不一樣,您需要仔細研究並大量測試才能深入掌握。
當尋找/取代對話方塊中左下角的「啟用取代功能」檢查方塊被選中時,可以使用強大的專業級編輯功能 -「批量取代」功能。
按一下「批量取代」按鈕,即可開啟「批量取代」對話方塊:
圖 UG-5-2 批量取代主對話方塊
該功能允許一次性對上或下編輯區中的文字連續進行不限次的多組取代,每組尋找和取代詞均可為多行文字,每組取代可單獨設定是否套用、比對全詞、大小寫視為相異和應用特定字元等選項。
每套批量取代設定均可儲存為檔案長期使用。批量取代功能既是強大的文字編輯功能,也可以作為簡繁轉換的有益補充。
在安裝套件中隨附了三個頁面清理巨集,可用於規範、整理中英文文章的標點、空白及段落佈局,也可用作編輯、製作批量取代巨集的參考樣本。 |