Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
現在的軟體設計技術中, 你會發現 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 視窗, 一個很棒的 設計精靈...
更重要的是 這是個免費的 重量級好工具 :) 我想特別推薦兩個工具:
Regulazy - Point & Click Regular Expressions
如果你沒寫過, 或是只需要撰寫一個簡單的 Regular Expression,
透過該工具, 你可以快速產出 如 庫存料號公式, 地址, 郵件.... etc
符合您商務需要的 Regular Expression 語句.
當你已經變成專家了, 你會需要更專業的工具, 這個工具可以幫你檢視你撰寫的 Regular Expression, 這個工具可以協助你檢驗, 分析, 驗證測試資料..