package jeffaschenk.commons.validation.validators; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; /** * Provide deep Email Address Validation * * originally published by: * http://www.devdaily.com/blog/post/java/java-email-address-validation-class by alvin on July 24, 2007. * * @author jeffaschenk@gmail.com * Date: Apr 9, 2010 * Time: 4:29:26 PM */ /** * A class to provide stronger validation of email addresses. * devdaily.com, no rights reserved. :) */ public class EmailAddressValidator { /** * Is Valid EmailAddress? * * @param emailAddress * @return boolean True if valid email Address, otherwise false. */ public static boolean isValidEmailAddress(String emailAddress) { // a null string is invalid if (emailAddress == null) { return false; } // a string without a "@" is an invalid email address if (emailAddress.indexOf("@") < 0) { return false; } // a string only more than one at "@" is an invalid email address if (emailAddress.indexOf("@") != emailAddress.lastIndexOf("@")) { return false; } // a string without a "." is an invalid email address if (emailAddress.indexOf(".") < 0) { return false; } // a string without a "." is an invalid email address if (emailAddress.indexOf(".") < 0) { return false; } try { InternetAddress internetAddress = new InternetAddress(emailAddress); return true; } catch (AddressException ae) { // log exception return false; } } }