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;
    }
}

該方法支持批量驗證,只需要將多個郵箱地址使用逗號隔開即可

如您在閱讀中發現不足,歡迎留言!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章