快速入門
教學
工具和語言
範例
參考
書籍評論
書籍評論
正則表示式食譜
自學正則表示式
精通正則表示式
Java 正則表示式
Oracle 正則表示式
正則表示式口袋參考
正則表示式食譜
Windows 正則表示式食譜
本網站的其他內容
簡介
正則表示式快速入門
正則表示式教學
替換字串教學
應用程式和語言
正則表示式範例
正則表示式參考
替換字串參考
書籍評論
可列印 PDF
關於本網站
RSS Feed 和部落格

Nathan Good 著的正則表示式食譜 (Apress)

當我看到這本書的書名時,我對於一本充滿詳細正則表示式範例的書感到興奮。很遺憾,結果並非如此。

這本書有 285 頁,列出了 100 個可以透過正則表示式完成的任務。作者提供的解答不僅包括正則表示式,還包括 Perl 中的完整原始碼片段。大多數食譜也使用不同的程式語言展示相同的解答 (使用相同的正則表示式)。許多食譜都有 PHPPython 的解答。有些也有 Vim (UNIX 文字編輯器) 和 UNIX shell 指令碼的解答。

顯然,這些範例偏重於 UNIX 和開放原始碼。如果您是 Windows 程式設計師,您可能需要查看 Windows 程式設計師的正則表示式食譜。這基本上是同一本書,食譜清單幾乎相同,但範例改用 C# 和 VB 撰寫。

每個食譜也都有「運作方式」區段,基本上將正則表示式轉錄成英文,方法類似於 RegexBuddy 的純英文正則表示式樹狀結構,儘管這本書使用平面描述,而非樹狀結構。

大多數的範例解決了相當基本的程式,並分為六個章節。第一個章節「文字與文字」,處理尋找空白行、重複的字詞、行首或行尾的字詞等。第二個章節「網址與路徑」有範例可以尋找網址與檔案路徑,並從中擷取部分內容。第三個章節「CSV 與 tab 分隔的檔案」有幾個範例可以轉換這兩種檔案格式,並擷取欄位。

第四個章節「格式化與驗證」說明如何驗證數字、貨幣、日期、電話號碼、地址等。第五個章節「XML 與 HTML」有範例可以比對和取代標籤與屬性。最後,第六個章節「編碼與使用指令」有一些範例可以處理原始碼檔案,並剖析各種 UNIX 系統指令的結果。

如果這本書專注於正規表示式,並省略許多 Perl 原始碼,會是一個更好的選擇。更別提許多範例也有等值的 PHP 和/或 Python 原始碼清單。如果沒有原始碼,一本相同大小的書可以輕鬆包含 250 個範例。這將對知道如何程式設計,但不太熟悉正規表示式的程式設計師更有用。

就目前而言,我只能推薦這本書給不只對正規表示式很陌生,而且對程式設計也相對陌生的人。這本書確實包含許多範例,可以解決你在 Perl、PHP 或 Python 中撰寫網站腳本時可能會遇到的基本問題。如果你碰巧使用這些語言之一,而且正在尋找食譜式的方法,你一定會覺得這本書很有用。

但是不要期望從這本書真正了解正規表示式的運作方式。如果你以開發軟體為生,你最好使用良好的正規表示式教學或「正規表示式食譜」這類書籍。