Java - Một vài hàm kiểm tra tính hợp lệ của email bằng pattern(some check validate email address function with regular expression).




Bài viết này sẽ cung cấp một số hàm(function) dùng để kiểm tra tính hợp lệ của email(email validation).

Bạn có thể tham khảo bài viết Kiểm tra tính hợp lệ của email bằng pattern để hiểu cách sử dụng pattern.

Bài viết này chỉ cung cấp các hàm(function) để bạn có thể áp dụng trực tiếp vào code của mình bằng gọi đến nó, vì vậy sẽ không có giải thích chi tiết nha.




Biểu thức chính quy đơn giản để xác nhận địa chỉ email
public boolean validateEmail(String email) {
    Pattern pattern;
    Matcher matcher;
    String EMAIL_PATTERN = "^\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
   
    pattern = Pattern.compile(EMAIL_PATTERN);
    matcher = pattern.matcher(email);
   
    return matcher.matches();
}

Biểu thức để xác nhận địa chỉ email và bắt buộc các ký tự trong email là chữ thường(lower case)
public boolean validateCaseSensitiveEmail(String email) {
    Pattern pattern;
    Matcher matcher;
    String EMAIL_PATTERN = "^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,4})$";
   
    pattern = Pattern.compile(EMAIL_PATTERN);
    matcher = pattern.matcher(email);
   
    return matcher.matches();
}

Biểu thức để xác nhận địa chỉ email và chỉ định các email có tên miền được nghĩa mới hợp lệ.
public boolean validateDomainEmail(String email) {
    Pattern pattern;
    Matcher matcher;
    String EMAIL_PATTERN = "^([\\w-\\.]+@(?!gmail.com)(?!yahoo.com)(?!hotmail.com)([\\w-]+\\.)+[\\w-]{2,4})?$";
   
    pattern = Pattern.compile(EMAIL_PATTERN);
    matcher = pattern.matcher(email);
   
    return matcher.matches();
}

Trong phần này nếu bạn muốn thêm một tên miền email(domain email) được hợp lệ thì bạn chỉ cần thêm vùng (?!new_domain_email.com).

Thí dụ ở đây tôi muốn thên domain email "live.com" vào pattern thì sẽ làm như sau:

Hi vọng giúp ích được cho bạn.







No comments:

Post a Comment