2013-03-27 45 views
0

嗨,我有字段調用我的MVC 3模型UserName。此propery可能是有效的電子郵件地址或可能是有效的AlphaNumeric。我如何編寫正則表達式來檢查這兩件事(有效的電子郵件或有效的Alpha數字)。正則表達式有效的電子郵件地址或有效的字母數字檢查

有效的電子郵件Expresion,我現在用的就是

"^[_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))$" 
+0

什麼正則表達式實現您使用?電子郵件地址或字母數字字符串的內容是否有任何限制? – woemler 2013-03-27 01:30:01

回答

0

假設你想要的字母數字字符串相匹配,而不是電子郵件地址真的只是A-Z0-9,你可以把你所擁有的已經...

^[_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))$ 

...並與管道,以表明它作爲任選組包裝在括號...

^([_a-zA-Z0-9\'-]+(\.[_a-zA-Z0-9\'-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(name))|[a-zA-Z0-9]+)$ 

這似乎是一個過於簡單化的解決方案,給你迄今爲止所做的工作,這讓我想知道是否有一些趕上這個?

+0

什麼是正確的syntex。這個拋出錯誤'(name))| [a-zA-Z0-9] +)$'因爲在$符號之前關閉括號。 '(name))| [a-zA-Z0-9] + $'是正確的還是需要將它括入括號中。 – user602291 2013-03-27 02:37:48

+0

正如我在這裏的正則表達式模式,當我測試它時工作。仔細檢查你是否在複製時沒有意外刪除任何括號或括號。你在用什麼語言? – woemler 2013-03-27 15:10:26

+0

都很好。謝謝你幫助我。 – user602291 2013-03-28 00:52:51

0

如果你想字母數字(必須包含單字母和單數字)試試這個

(?=[0-9a-zA-Z]*[a-zA-Z][0-9a-zA-Z]*)(?=[0-9a-zA-Z]*[0-9][0-9a-zA-Z]*)(^[0-9a-zA-Z]+$) 
相關問題