首页 > 解决方案 > 如何在java上验证电子邮件输入

问题描述

如何验证电子邮件字段输入

  1. 不以“@”或“。”开头。</li>
  2. 不包含超过 1 个“@”或“。”</li>

我已经将电子邮件字段编码为超过 14 个字符,以“.com”结尾,并在“.”旁边添加“@”。</p>

     String regemail = emailfield.getText();

     if ( !regemail.contains("@") ) {
     JOptionPane.showMessageDialog(null, "Email must contain '@' once");
     emailfield.requestFocus();
     return false;
     } else

     if ( !regemail.contains(".com") ) {
     JOptionPane.showMessageDialog(null, "Email must contain '.com' 
     once");
     emailfield.requestFocus();
     return false;  
     } else

     if ( regemail.indexOf("@")
     > regemail.lastIndexOf(".com") ) {
     JOptionPane.showMessageDialog(null, "Wrong Email Format");
     emailfield.requestFocus();
     return false;
     } else

     if(regemail.length() < 13) {
           JOptionPane.showMessageDialog(null, "Email length must more 
           than 14 characters");
     emailfield.requestFocus();
     return false;
     }

标签: java

解决方案


请使用正则表达式:

  private final Pattern EMAIL_ADDRESSS_REGEX_PATTERN =
        Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

private boolean isValidEmail(String email)
{
    return EMAIL_ADDRESSS_REGEX_PATTERN.matcher(email).find();

}

推荐阅读