मैंने कई अलग-अलग गलत और मान्य ईमेल पतों के साथ निम्नलिखित क्वेरी का परीक्षण किया। यह काम करना चाहिए।
IF (
CHARINDEX(' ',LTRIM(RTRIM(@email_address))) = 0
AND LEFT(LTRIM(@email_address),1) <> '@'
AND RIGHT(RTRIM(@email_address),1) <> '.'
AND CHARINDEX('.',@email_address ,CHARINDEX('@',@email_address)) - CHARINDEX('@',@email_address ) > 1
AND LEN(LTRIM(RTRIM(@email_address ))) - LEN(REPLACE(LTRIM(RTRIM(@email_address)),'@','')) = 1
AND CHARINDEX('.',REVERSE(LTRIM(RTRIM(@email_address)))) >= 3
AND (CHARINDEX('[email protected]',@email_address ) = 0 AND CHARINDEX('..',@email_address ) = 0)
)
print 'valid email address'
ELSE
print 'not valid'
यह इन शर्तों की जाँच करता है:
- कोई एम्बेडेड स्थान नहीं
- '@' ईमेल पते का पहला अक्षर नहीं हो सकता
- '।' ईमेल पते का अंतिम अक्षर नहीं हो सकता
- एक ' होना चाहिए।' कहीं '@' के बाद
- '@' चिह्न की अनुमति है
- डोमेन नाम कम से कम 2 वर्णों के विस्तार के साथ समाप्त होना चाहिए
- '[email protected]' और '..' जैसे पैटर्न नहीं हो सकते हैं