java - 如何在java上验证电子邮件输入

标签 java

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

  1. 不以“@”或“.”开头
  2. 不包含超过 1 个“@”或“.”

我已经将电子邮件字段编码为超过 14 个字符,以“.com”结尾,并将“@”放在“.”旁边

     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;
     }

最佳答案

请使用正则表达式:

  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();

}

关于java - 如何在java上验证电子邮件输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56503361/

相关文章:

java - 如何访问 thymeleaf block 中的对象?

java - 将文本从 editText 发送到 ListView(2 个 Activity )

java - 在Java中解析JSON uint32/uint64数字

Java 不能从盒装类型转换为原始类型

java - 安卓 : faster solution to copying one file to another

java - 以一种形式多次提交。在一份表格中提交超过 1 份。或 1 个 JSP 中的多个表单

java - 使用 Java 缩放大图像

java - 从 Eclipse 生成的 Gradle 构建文件,出现错误 : Gradle version 1. 10 是必需的

Java SecureRandom 生成类似 Medium.com 的 URL(随机 12 个字符)

java - 为什么我不能导入 sun 包?