2013-07-15 36 views
0

我有以下的正則表達式的作品很好地驗證電子郵件:C#電子郵件的正則表達式 - 黑名單字符,如「

[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9])?\.)+[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9]) 

但我想添加到正則表達式來使它失敗,如果的任何部分電子郵件中包含某些字符,如"

+5

FWIW [不驗證電子郵件地址!](http://davidcel.is/blog/2012/09/06/stop-validating-email-addresses-with-regex/) – HamZa

回答

0

如果添加

(?<!".*) 

當前的正則表達式表達的前面,正則表達式匹配將失敗的電子郵件地址續ains a「

+0

或者只是' (?!。*「)'在表達式的開頭:) – HamZa

+0

您的正則表達式在功能上與所提供的不同? – SetiSeeker

+0

你正在做一個非固定長度的負面lookbehind,這是非常昂貴的,但最重要的是,並非所有的正則表達式風格都支持它。因此,爲了使您的正則表達式更具可移植性,您可以使用負面預測。 – HamZa