Java中验证邮箱地址的合法性

最近做了一个邮件发送微服务,项目中需要对发送的邮箱地址进行验证

需要使用发送邮件功能的,请看我的:SpringBoot发送邮件

  • 1、验证邮箱地址的合法性代码如下 MailUtils.java:
import org.thymeleaf.util.StringUtils;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @ClassName EmailUtils
 * 发送邮件工具
 * @Author Lizhou
 * @Date 2020-03-16 15:24:24
 **/
public class EmailUtils {

    /**
     * 判断该邮件地址是否合法
     *
     * @param address 邮件地址,可以多个,逗号隔开
     * @return
     */
    public static boolean isEmailAddress(String address) {
        // 是否合法
        boolean flag = false;
        if (StringUtils.isEmpty(address)) {
            return false;
        }
        try {
            String[] addressArr = address.split(",");
            String check = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
            Pattern regex = Pattern.compile(check);
            Matcher matcher = null;
            for (String str : addressArr) {
                matcher = regex.matcher(str);
                flag = matcher.matches();
                if (!flag) {
                    return false;
                }
            }
        } catch (Exception e) {
            flag = false;
        }
        return flag;
    }
}

该方法支持批量验证,只需要将多个邮箱地址使用逗号隔开即可

如您在阅读中发现不足,欢迎留言!!!

发布了84 篇原创文章 · 获赞 203 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_40065776/article/details/105065891
今日推荐