Regular Expression to Validate a Comma-Separated List of Email Addresses
Need to validate a CSV-formatted list of email addresses? Check out this regular expression and how to use it!
EDIT It has already been pointed out by several readers that this expression doesn't handle a number of common cases. See the comments or the original blog entry for an updated version.
Recently I needed to create a regular expression to validate the format of a comma-separated list of email addresses. Just thought I’d share the result in case it is of use to anyone:
\w+@\w+\.\w+(,\s*\w+@\w+\.\w+)*
Here’s an example of applying the pattern in Java:
// Compile pattern
Pattern emailAddressPattern = Pattern.compile(String.format("%1$s(,\\s*%1$s)*", "\\w+@\\w+\\.\\w+"));
// Validate addresses
System.out.println(emailAddressPattern.matcher("xyz").matches()); // false
System.out.println(emailAddressPattern.matcher("[email protected]").matches()); // true
System.out.println(emailAddressPattern.matcher("[email protected], xyz").matches()); // false
System.out.println(emailAddressPattern.matcher("[email protected], [email protected]").matches()); // true
Published at DZone with permission of Greg Brown. See the original article here.
Opinions expressed by DZone contributors are their own.