Problems with matching emails with regex
- by Gandalf StormCrow
Hello,
I'm trying to match an email address here is what I've come up with so far :
String text = "[email protected]";
String regex = "(\\w+)@{1}(\\w+){2,}\\.{1}\\w{2,4}";
This however works with following cases :
[email protected]
[email protected]
[email protected]
So it matches any alphanumeric character repeated once or more that comes before one @ followed by any alphanumeric character repeated at least two times(which is minimal characters for any domain name) followed by one .(dot) and followed by any alphanumeric character repeated at least 2 times and at most 4 times(because there are domains such as .us or .mobi).
This expression however does not work with emails such as :
[email protected]
[email protected].uk
[email protected].uk
[email protected].uk
etc as many subdomains
or
[email protected]
[email protected].uk
[email protected].uk
[email protected].uk
I've just started to learn regex and I found interesting to try to solve problems such as these by using regex .. not partially but for each case, any help would be much appriciated. Thank you