Java 示例 - 验证电子邮件地址格式 问题描述 如何验证电子邮件地址格式? 解决方案 以下示例演示如何使用 String 类的 matches() 方法验证电子邮件地址。 public class Main { public static void main(String[] args) { String EMAIL_REGEX = "^[\\w-_\\.+]*[\\w-_\\.]\\@([\\w]+\\.)+[\\w]+[\\w]$"; String email1 = "user@domain.com"; Boolean b = email1.matches(EMAIL_REGEX); System.out.println("is e-mail: "+email1+" :Valid = " + b); String email2 = "user^domain.co.in"; b = email2.matches(EMAIL_REGEX); System.out.println("is e-mail: "+email2+" :Valid = " + b); } } 复制 结果 上面的代码示例将产生以下结果。 is e-mail: user@domain.com :Valid = true is e-mail: user^domain.co.in :Valid = false 复制 以下是验证电子邮件地址格式的示例。 import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { public static void main(String args[]) { List emails = new ArrayList(); emails.add("sairamkrishna@cainiaoya.com"); emails.add("kittuprasad700@gmail.com"); emails.add("sairamkrishna_mammahe%google-india.com"); emails.add("sairam.krishna@gmail-indai.com"); emails.add("sai#@youtube.co.in"); emails.add("kittu@domaincom"); emails.add("kittu#gmail.com"); emails.add("@pindom.com"); String regex = "^(.+)@(.+)$"; Pattern pattern = Pattern.compile(regex); for (Object email : emails) { Matcher matcher = pattern.matcher((CharSequence) email); System.out.println(email + " : " + matcher.matches()); } } } 复制 上面的代码示例将产生以下结果。 sairamkrishna@cainiaoya.com : true kittuprasad700@gmail.com : true sairamkrishna_mammahe%google-india.com : false sairam.krishna@gmail-indai.com : true sai#@youtube.co.in : true kittu@domaincom : true kittu#gmail.com : false @pindom.com : false 复制