2013-08-02 78 views
0

我試圖創建一個電子郵件地址正則表達式,它只接受以"@gbase.tt"結尾的電子郵件地址。使用固定域驗證電子郵件地址的正則表達式

我想:^[A-Z0-9._%+-][email protected]\.tt$

+0

你的是好了,你只是缺乏小寫字符和逃避'在域.':'^ [A-ZA-Z0-9 ._%+ - ] + @ gbase \ .tt $' - http://regexr.com?35qhk - 但你真的應該使用一種工具,因爲你的語言可能已經有了它。 – acdcjunior

+1

請勿使用正則表達式驗證電子郵件地址:http://davidcel.is/blog/2012/09/06/stop-validating-email-addresses-with-regex/ –

+0

是的,不要驗證電子郵件地址表達式。那些接近於匹配所有有效案例的是過於複雜的,他們仍然不能按照他們應該的那樣工作。 – pajaja

回答

2

爲什麼要使用正則表達式時,如果字符串以「@ gbase.tt」結尾,你可以測試?

但是,如果您確實必須使用正則表達式,請嘗試^[email protected]$

+0

我真的沒有想到測試字符串是以「@ gbase.tt」結尾的,剛開始時只是編輯了一些代碼,我想改變我以前的正則表達式來完成上面所說的內容。 – Denzil

2

我會從一個完整的電子郵件正則表達式開始,就像找到here

(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\]) 

這清楚地表達在它的@分裂,所以保持了前半部分,替換gbase\.tt$@符號後的一切。

請記住,由於點本身代表任何角色,因此您必須避開點。

+0

感謝您的幫助 – Denzil

0
var x=document.forms["myForm"]["emailId"].value; 
    var atpos=x.indexOf("@abc.com"); 
    var atpos1=x.indexOf("@xyz.in"); 
    var atpos2=x.indexOf("@www.in"); 

if (atpos<1 && atpos1<1 && atpos2<1) 
    { 
    alert("Not a valid e-mail address"); 
    return false; 
    } 
0

以下是包含「。」的固定域名和電子郵件ID的解決方案。或「_」

您可以使用pattern - pattern =「^ [A-Za-z0-9] +(。| _)+ [A-Za-z0-9] + @ + gmail.com $」

將只接受域名gmail.com電子郵件ID只

相關問題