Regex for Email ([A-Za-z]{2,4})$/

Viewed 38

I was reading this link to understand regex: https://www3.ntu.edu.sg/home/ehchua/programming/howto/Regexe.html

In my code, Here is what I have:

var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;

I was testing this email: "test@tatsu.works", and I got error "Please Enter Valid Email ID"

If I understand correct, it is related to the ending section .([A-Za-z]{2,4})$/

I though the {2,4} means 2 to 4 characters, so I changed to {2,6}, but still getting error. Basically the ".works" can be any number of characters.

Can I know what I do wrong?

Kind Regards

================================================================= EDIT: Apparently, changing to {2,6} or {2,} works, but the reason why it is not working for me is because I am using Chrome and somehow the javascipt is not refreshed (I think related to cookie)

When I switched to Edge, the regex works.

Anyway Thanks to user Wiktor Stribiżew

2 Answers

I'd just use filter_var with the FILTER_VALIDATE_EMAIL flag to check, if an email address is in the correct format.

if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
  // valid email address
}
Related