Freigeben über


Regular Expression 在 .NET 平台上的設計輔助工具推薦

現在的軟體設計技術中, 你會發現 Regular Expression 已經是第一線的軟體設計概念,

那麼什麼是 Regular Expression 呢 ? 我們不想考究 古老的 Unix 歷史.. 但如果你是第一次聽到 這個名詞,

你也不想搞得太複雜, 那麼我建議你 你可以簡單把它想做 這是個好的 "顯微鏡" 技術, 當你把資料放在顯微鏡後

透過 不同的微調參數, 你可以用來掃描 你想要的資料. (再次強調.. 您可以 做更多的學術考究 :))

在目前 .NET 的軟體開發技術中, 已經大量的採用了這個技術.

舉例來說, 

  • 在 .NET 核心元件中, System.Text.RegularExpressions 命名空間的所有函式物件, 提供了所有微調與管控該顯微鏡的 API 與程式庫;
  • 在 ASP.NET 中, 針對 Server Side Control 所對應的 Validation 架構, 也是大量利用該技術, 驗證使用者輸入的資料, 是符合系統規畫的預期
  • 在未來 Enterprise Library 3.0 版本中, 更直接實作了全新的 Validation Block 來驗證更多商業物件邏輯

 

 

如果您真的完全沒有使用過的經驗, 那麼 請看 ASP.NET 這個範例,

透過 RegularExpression Validation 元件, 你可以簡單驗證 使用者輸入的資料

必須滿足正確的格式. \w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

很棒的技術架構, 但 真正的問題來了~ "我怎麼撰寫這些 Regular Expression ?"

 

你可以簡單打開 瀏覽器做個搜尋, 資料還真不少 甚至連 MSDN 上也有一系列的指引, 但我的經驗是, 很難.. 大多數的技術人員, 在只有 白皮書的狀態下, 根本不會用; 事實上 沒有好的工具做輔助, 這個好技術 是只有在倉庫裏頭發霉... :<

不過現在,情況應該好轉了, 在國外 一個獨立的軟體專家 Roy Osherove , 設計了一系列開發與驗證 Regular Expression 的套件.這些套件相當的酷. 包含了 直接整合到 Visual Studio Dedugging 視窗, 一個很棒的 設計精靈...

更重要的是 這是個免費的 重量級好工具 :) 我想特別推薦兩個工具:

Short Regulazy Sample

 

 

  Regulazy - Point & Click Regular Expressions

  如果你沒寫過, 或是只需要撰寫一個簡單的 Regular Expression,

  透過該工具, 你可以快速產出 如 庫存料號公式, 地址, 郵件.... etc

  符合您商務需要的 Regular Expression 語句.

 

 

 

 

 

 

The Regulator

當你已經變成專家了, 你會需要更專業的工具, 這個工具可以幫你檢視你撰寫的 Regular Expression, 這個工具可以協助你檢驗, 分析, 驗證測試資料..