Regex的概念和作用就不多說了。Regex不好寫(不好想),所以有很多工具來協助我們寫Regex,The Regulator 就是其中的佼佼者(被列入MSDN上的知名文章《Ten Must-Have Tools Every Developer Should Download Now》)。 The Regulator官方網站http://royo.is-a-geek.com/iserializable/regulator/。最新版本為2.0.3。本文對The Regulator 的使用作一個簡單介紹。
4i?"N3K/q S0
%GXhW$n0N'V0ITPUB個人空間:v5uX2@ T
The Regulator視窗主要分為六部分:Web Search、Regex Analyzer、SnippetsControl、運算式輸入區、Match結果區、待解析文本區。比較重要的是Regex Analyzer、運算式輸入區、Match結果區、待解析文本區。在預設情況下,Web Search區佔了很大位置,可能需要調整一下。ITPUB個人空間^AP*d CbE
ITPUB個人空間| e%iD ^
基本用法:在運算式輸入區、待解析文本區 輸入你心目中的運算式和待解析文本,然後點功能表列中的Match,結果會顯示在Match結果區。ITPUB個人空間 pH$F0T@;`&P'LVV
ITPUB個人空間+ZL#C+V*]V CT @^6_
如果你想弄清楚一個Regex的意思,可以利用Regex Analyzer(在View菜單),不過該功能有時候無法解析出結果,此時可以把運算式輸入區 或者待解析文本區 中的內容稍微改一下(比如添加一個空格),或許就可以解析出正確的結果了。比如我輸入 \d{2}-\d{5} ,會解析出 Any digit Exactly 2 times - Any digit Exactly 5 times 。可以協助我們理解一個複雜的Regex。ITPUB個人空間$j t;giy.j,C,X
其他有用的功能:產生代碼(C# or VB.NET)、直接編譯成DLL、從網站檢索現成的Regex (Web Search)、儲存常用的運算式(SnippetsControl)等等 。ITPUB個人空間 S4jc$[2u*J.Xv
,M;j,f5MY0說到Regex,還有一個工具很有名氣:Expressohttp://www.ultrapico.com/。這個工具在codeproject上有詳細介紹,出品時間也比The Regulator早。The Regulator的作者也受到了Expresso 的影響,才開發的The Regulator。他在The Regulator的協助檔案中說:"The Original idea for The Regulator came from a simple Regex Tester called "Expresso". It was simple and easy to use (to a certain degree), but it mainly prompted the idea in me that I could build something similar with features that I wished I had.
'pgpv(`w`!v1u2B0So thanks, Expresso. Couldn´t have done this one without ya! "
,DXY{F1` b0