필요
- 이메일 주소가 합법적인지 확인합니다.
- 법적 주소 목록을 일괄적으로 판단하고 필터링합니다.
코드 모듈
public static List<String> getValidEmailAddressList(List<String> addressList) {
List<String> newEmailAddressList = new ArrayList<>();
if (CollectionUtil.isEmpty(addressList)) {
return newEmailAddressList;
}
try {
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 : addressList) {
matcher = regex.matcher(str);
if (matcher.matches()) {
newEmailAddressList.add(str);
}
}
} catch (Exception e) {
log.error("email address check error: {}", e.getMessage());
}
return newEmailAddressList;
}