2010-01-28 70 views
-1

我想驗證用戶輸入的電子郵件地址,它與格式[email protected]一樣。必須在電子郵件地址中寫上iti.gov.eg。用戶必須在文本框中以該格式輸入他的電子郵件地址。正則表達式來查找特定域的電子郵件地址

如何從文本框中檢索它並檢查它?

我的代碼是:

var r=/^([a-z\.])+\@(iti)+\.+(gov)+\.+(eg)+$/; 
if (!r.test(string)) 
    alert("the email is not correct"); 
else 
    alert("your email is correct"); 

但這是錯誤的。任何人都可以幫助我嗎?

+0

爲什麼不用'\ .iti \ .gov \ .eg'? – Skilldrick 2010-01-28 11:00:48

+2

如果您的用戶電子郵件必須以「@ iti.gov.eg」結尾 - 爲什麼不簡單要求他們只輸入其用戶名部分?然後只需將「@ iti.gov.eg」添加到他們輸入的內容中即可。它可以節省用戶輸入的麻煩,以及複雜的正則表達式的麻煩。 – logout 2010-01-28 11:13:55

回答

0

是的,這是錯誤的,因爲[email protected]將被匹配。由於+意味着一次或多次。

您只需要/^[a-z.][email protected]\.gov\.eg$/

+0

我沒有複製你的答案,只是太tooooo慢:) – dwo 2010-01-28 11:03:02

+0

@dwo:它總是發生在這樣的簡單問題:) – kennytm 2010-01-28 11:07:44

0

注意正則表達式中的點:你寫的。+表示1到n個隨機字符。我想你的意思是:

/^([a-zA-Z0-9]+)@iti\.gov\.eg$/ 
3

參見如何驗證使用JavaScript的正則表達式的電子郵件這樣的問題:

Validate email address in Javascript?

一旦你知道,這是一個有效的電子郵件地址,然後就可以進行檢查,以確保它包含字符串@iti.gov.eg(不區分大小寫)這是一個更容易的任務。

相關問題