2011-09-22 62 views
0

在我的項目中,我給電子郵件地址發送一個文本框中的郵件。我可以提供一個電子郵件地址或用逗號分隔的多個電子郵件地址。有沒有這種情況的正則表達式。我只使用了以下代碼及其檢查單個電子郵件地址。在java中用逗號分隔的多個電子郵件地址的正則表達式

public static boolean isEmailValid(String email){ 

      boolean isValid = false; 
     String expression = "^[\\w\\.-][email protected]([\\w\\-]+\\.)+[A-Z]{2,4}$"; 
     CharSequence inputStr = email; 

     Pattern pattern = Pattern.compile(expression,Pattern.CASE_INSENSITIVE); 
     Matcher matcher = pattern.matcher(inputStr); 
     if(matcher.matches()){ 
     isValid = true; 
     } 
     return isValid; 
     } 
+3

我可以是愚蠢的,但只是通過逗號分開並分析每個令牌?給定一個逗號不是一個有效的電子郵件字符,你應該只能有一個有效的值之間。 (您可能還想在解析之前修剪令牌以避免空白失敗)。 –

+1

還應該注意的是[正則表達式不是驗證電子郵件地址的好方法](http://stackoverflow.com/questions/201323/what-is-the-best-regular-expression-for-validating-電子郵件地址/ 201378#201378)。 – unholysampler

+1

我希望你知道你的正則表達式非常簡單,並會錯過很多有效的電子郵件地址,因爲你不允許有效的字符成爲電子郵件地址的一部分。 – stema

回答

0

您可以在拆分電子郵件-VAR一「」和檢查每個EMAILADDRESS你有:)

1
  1. 通過分割你的情況「」分隔符輸入。
  2. 檢查每封電子郵件是否有效。
  3. 顯示適當的消息(電子郵件1是有效的,電子郵件2是無效的,電子郵件3無效等等等等)
相關問題