2014-05-08 43 views
0

我嘗試以下正則表達式來拒絕來自輸入電子郵件ID如[email protected]正則表達式重複字符的輸入中爲電子郵件驗證

@"^((?!\1{2,})([\w-]+\.)+[\w-]+|([a-zA-Z]{1}|[\w-]{2,}))(?!\1{2,})@((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])(?!\1{2,})\. 
([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])(?!\1{2,})\. 
([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])(?!\1{2,})\. 
(?!\1{2,})([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|([a-zA-Z]+[\w-]+\.) 
(?!\1{2,})+(?!\1{2,})[a-zA-Z]{2,4})$" 

用戶,但它沒沒有工作。任何人都可以幫助

編輯: 1.一個角色出現的次數不能超過兩次。

+0

請你詳細說明你的問題,之後就會有多少重複給指錯誤和所有。 –

+3

/我想知道爲什麼這樣的電子郵件應該被禁止... –

+1

如果我在'.xxx'域中註冊了電子郵件怎麼辦? –

回答

0

(\w)\1\1應該這樣做。

\w匹配任何單詞字符,並把它的第一個捕捉組中,然後\1檢查同捕獲組,因此這將匹配在連續單詞字符的三個實例任何字符串。所以任何郵件不是匹配這個正則表達式將是有效的您的標準。

正如其他人所說,做這種驗證可能是一個壞主意,但如果這是一個要求,你已經給了,無法避免,上述解決方案將工作。或者,您可以使用此功能向用戶顯示警告,而不是完全拒絕該電子郵件。

+1

相關:http://www.iiiiiiii.com/(這不是一個反例,只是一些音樂) – Kobi

+1

@Kobi匹配模式,因爲它應該。希望從我的回答的最後一段可以看出,這不是基於這種模式阻止電子郵件的認可。但是有時候開發者會得到要求,他們必須執行他們是否同意他們。我也許可以看到它的價值只是在輸入字段旁邊放置一個不顯眼的「警告:這封電子郵件包含重複的字符,請檢查它是否正確」 - 儘管這不是我自己選擇做的事情。 –

+0

「(這不是一個反例,只是一些音樂)」啊:) –

0

婁應該工作

^((。)\ 2 {0,1}(?!\ 2))* $

+1

不適合我。例如[email protected]和[email protected],兩者都不匹配 –

+0

現在它被調整爲問題編輯 – st4hoo

+1

現在它似乎工作 –

相關問題