2014-05-04 72 views
0

我的任務是讓註冊表中的「+」號無效。我是新來的正則表達式,我對它的研究使我相信最好在有效的輸入中陳述你想要的,而不是你不想要的。我以前使用RegexBuddy的簡化RFC 2822和去除加號從它,獲取表達:使用angularJS和註冊表刪除電子郵件地址中的「+」符號

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

,同時通過RB的測試功能(即無效「[email protected]」),它不能正確無效相同的輸入時,我使用相同的表達式作爲NG-圖案

+4

不要那樣做; '+'完全有效。 – SLaks

+0

不是說它不是..但如果我必須? @SLaks – Kepedizer

+0

你想替換'+'或測試電子郵件是否包含'+'? –

回答

0

快速溶液

要刪除+符號

"[email protected]".replace(/\+/g,''); // -> [email protected] 

爲了驗證

var email = "[email protected]"; 
var valid = email.match(/\+/g) ? false : true; 
if(valid) { 
    console.log("Email Id doesn't contain +"); 
} else { 
    console.log("Email Id contains + Invalid"); 
} 
+0

我非常懷疑OP實際上是想刪除加號。如問題中所述,OP要驗證您的答案沒有做的地址。 – dirkk

+0

更新了代碼以使帶有'+'符號的電子郵件無效 – Senthilnathan

相關問題