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

Nathan Good 所著的 Windows 開發人員正規表示式食譜 (Apress)

當我看到這本書的標題時,我對一本充滿詳細正規表示式範例的書感到興奮。不幸的是,結果並非如此。

本書共 359 頁,列出了 100 項您可以使用正規表示式完成的任務。作者不僅提供了正規表示式,還提供了 C#VB.NETJavaScriptVBScript 中的完整原始碼片段作為解決方案。並非所有解決方案都有所有語言的片段。有些解決方案還有一個 ASP.NET 片段。

顯然,這些範例嚴重偏向 Windows 和 .NET。如果您使用開源語言,您可能想看看本書的前身 正規表示式食譜。它基本上是同一本書,食譜清單幾乎相同,但範例使用 PerlPHPPython

每個食譜還有一個「運作方式」部分,基本上將正規表示式轉錄成英文,方法類似於 RegexBuddy 的純英文正規表示式樹,儘管本書使用平面描述而不是樹狀結構。不過,這些描述很簡短。雖然所有原始碼片段每個食譜都輕鬆佔用兩頁以上,但說明通常不到半頁長。

這本書確實有一些粗糙的編輯。原始碼片段中的正規表示式並不總是與說明中的相同。例如在範例 6-21 中,JavaScript 片段使用命名擷取。然後說明繼續說明沒有命名擷取的正規表示式。JavaScript 不支援命名擷取。這些問題大多很簡單,但對於顯然針對初學者的書來說並不好。

大多數範例解決相當基本的問題,分為六章。第一個「字詞和文字」處理尋找空白行、重複字詞、行首或行尾的字詞等。在「網址和路徑」章節中有尋找網址和檔案路徑以及從中擷取片段的範例。「CSV 和分隔符號分隔檔案」有一些範例說明如何在兩者之間轉換以及擷取欄位。

「格式化和驗證」章節說明如何驗證數字、貨幣、日期、電話號碼、地址等。「XML 和 HTML」章節有匹配和替換標籤和屬性的範例。最後,「原始碼」章節有一堆處理軟體原始碼和相關檔案的範例。這些任務大多是 .NET 程式設計師可能偶爾會想做的零碎工作。

如果這本書專注於正規表示式,並省略許多原始碼行,更不用說多國語言的重複副本,那會更好。沒有原始碼,相同大小的書可以輕鬆包含 300 個範例。對於知道如何程式設計但不太熟悉正規表示式的程式設計師來說,這會更有用。

就目前而言,我只能推薦這本書給不僅是正規表示式新手,而且也是程式設計新手的人。這本書確實包含許多範例,這些範例解決了在撰寫 .NET 應用程式或網站腳本時可能會遇到的基本問題。如果你碰巧使用 C#、VB.NET、JavaScript 或 VBScript,並且正在尋找食譜方法,你一定會覺得這本書很有用。

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