Hãy thử điều này:
var emailpat = /^[^@][email protected][^@]+\.[^@\.]{2,}$/;
Địa chỉ email chỉ nên có một ký tự @ và đó không được là ký tự đầu tiên. Sau dấu @, bạn sẽ cần ít nhất một dấu chấm theo sau là 2 hoặc nhiều chữ cái.
Và có, điều này cũng chấp nhận các địa chỉ email không hợp lệ. Nếu bạn muốn chắc chắn rằng người dùng nhập địa chỉ email hợp lệ, bạn nên gửi email đến địa chỉ đó và đợi người dùng thực hiện hành động (tức là nhập mã có trong email).
Chỉnh sửa
Đã cập nhật regex để phần miền không còn bị giới hạn đối với TLD bảng chữ cái La Mã. Các bảng chữ cái khác được cho phép, mặc dù có lẽ không phổ biến lắm (chưa). Xem wikipedia cho ví dụ .