Java Email Validate isValidEmailAddress(String aEmailAddress)

Here you can find the source of isValidEmailAddress(String aEmailAddress)

Description

Validate the form of an email address.

License

Open Source License

Parameter

Parameter Description
aEmailAddress the address to be validated

Return

true is the address is a valid email address - false otherwise.

Declaration

public static boolean isValidEmailAddress(String aEmailAddress) 

Method Source Code


//package com.java2s;
/*/*from  w w  w.  j ava2s  .c o m*/
 * Copyright (C) 2000 - 2018 Silverpeas
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation, either version 3 of the
 * License, or (at your option) any later version.
 *
 * As a special exception to the terms and conditions of version 3.0 of
 * the GPL, you may redistribute this Program in connection with Free/Libre
 * Open Source Software ("FLOSS") applications as described in Silverpeas's
 * FLOSS exception.  You should have received a copy of the text describing
 * the FLOSS exception, and it is also available here:
 * "https://www.silverpeas.org/legal/floss_exception.html"
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;

import java.util.regex.Pattern;

public class Main {
    private static final String EMAIL_PATTERN = "^[A-Za-z0-9._%+\\-]+@[A-Za-z0-9.\\-]+\\.[A-Za-z]{2,4}$";

    /**
     * Validate the form of an email address.
     * <p> Returns <tt>true</tt> only if
     * <ul>
     * <li><tt>aEmailAddress</tt> can successfully construct an
     * {@link javax.mail.internet.InternetAddress}</li>
     * <li>when parsed with "@" as delimiter, <tt>aEmailAddress</tt> contains two tokens which
     * satisfy</li>
     * </ul>
     * <p>
     * The second condition arises since local email addresses, simply of the form "<tt>albert</tt>",
     * for example, are valid for {@link javax.mail.internet.InternetAddress}, but almost always
     * undesired.
     * @param aEmailAddress the address to be validated
     * @return true is the address is a valid email address - false otherwise.
     */
    public static boolean isValidEmailAddress(String aEmailAddress) {
        if (aEmailAddress == null) {
            return false;
        }
        boolean result;
        try {
            new InternetAddress(aEmailAddress);
            result = Pattern.matches(EMAIL_PATTERN, aEmailAddress);
        } catch (AddressException ex) {
            result = false;
        }
        return result;
    }
}

Related

  1. isValidEmail(String emailAddress)
  2. isValidEmail(String eMailAddress)
  3. IsValidEmail(String input)
  4. isValidEmailAddr(String str)
  5. isValidEmailAddress(String addr)
  6. isValidEmailAddress(String email)
  7. isValidEmailAddress(String email)
  8. isValidEmailAddress(String email)
  9. isValidEmailAddress(String email)