2016-11-09 4 views
0

Есть ли какое-либо регулярное выражение для проверки электронной почты, которая запрещает .com.com i.e [email protected], но разрешить .com.uk? Я вставил свой код, который должен возвращать false, когда пользователь вводит .com.com. Может ли кто-нибудь проверить мой код ниже?Проверка электронной почты в java

String ePattern = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@" + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"; 
Pattern p =Pattern.compile(ePattern); 
Matcher m = p.matcher(studentemail); 
b= m.matches(); 
    if(!b) { 
     eMsg.addError("email must be in formate: [email protected]/[email protected]"); 
     request.setAttribute("errorMessage", eMsg); 
     requestDispatcher = request.getRequestDispatcher("/addrecord.jsp"); 
     requestDispatcher.forward(request, response); 
     return; 
    } 

    else { 
      System.out.println("valid email id"); 
     } 
+6

Возможный дубликат [Использование регулярного выражения для проверки адреса электронной почты] (http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address) – 1615903

ответ

3

Такое регулярное выражение не ограничивается Java в большинстве случаев (только если используются специальные возможности, которые не поддерживаются в регулярных выражений Java). Кроме того, если вы хотите совместить @example.xx, вы должны настроить вторую часть своего регулярного выражения (особенно первую группу в этой части). Но обратите внимание, что есть такие области, как xxx.co.uk, которые могут быть неверными.

Также xx.com.comможет быть инвалидом домена, но он также не может (по крайней мере, в других комбинациях, например de.de является допустимым доменом), так что вы можете либо разрешить, что тест только для определенных комбинаций или ограничить использование таких областях.

Однако, в зависимости от вашего прецедента, вероятно, лучше отправить электронное письмо с подтверждением, так как регулярное выражение может просто сказать вам, что оно выглядит правильно, но могут быть ошибки.

+0

i получить его ... спасибо –

Смежные вопросы