Considering the problem of verifying the format of e-mail addresses, even though this may look like a trivial problem, in practice it is hard to find a simple regular expression that covers all the possible cases for valid e-mail formats. In this recipe, we will not try to find that ultimate regular expression, but rather to apply a regular expression that is good enough for most cases. The regular expression we will use for this purpose is this:
^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$
The following table explains the structure of the regular expression:
Part | Description |
^ | Start of string |
[A-Z0-9._%+-]+ | At least one character in the range A-Z, 0-9, or one of -, %, + or - that represents the local part of the email ... |