2009-03-10

Regex 檢驗機制的小嘗試

在撰寫程式的時候,我們大都會遇到關於字串解析的問題
譬如:所輸入的字串是否符合規定,
或是擷取字串其中某一小段,或是判別字串是否等於某個值

今天的小嘗試,所要做的就是去判別所輸入的字串
是否符合格式。。。所使用的是Regex這個類別

就已簡單判斷E-Mail輸入正不正確
程式碼如下:

 Regex r = new Regex(@"^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$");
 
Match m=r.Match(tbxMail.Text);
 
if (m.Success)
 
  MessageBox.Show(m.Value);
 
else                
 
  MessageBox.Show("輸入Mail格式錯誤!");     

在建立Regex物件時,所傳入的建構式參數
是Regular Expression字串
(其實到現在為止,我還不知道這個字串該怎樣去拼湊)
所以我上網去找關於E-Mail的Regular Expression
簡單結果測試如下:
image
image 

參考資料:
MSDN: Regex 類別
RegExLib.com
Regular-Expressions.info

沒有留言:

張貼留言