To start, all of the A-Z
(which are only capital letters) are probably meant to be a-zA-Z
.
^
and &
are the beginning and end of the input.
[A-Z0-9][A-Z0-9._%+-]{0,63}
It then looks for any number between 0 and 63 of pairs of characters of which the first is a capital letter or a number, and the second any of thse: A-Z, 0-9, ., _, %, +, -.
@(?:[A-Z0-9]{1,63}.){1,125}
After that it looks for the character @
followed by 1 to 125 sets of characters that contain between 1 and 36 times A-Z or 0-9 and than any characters (.
is probably meant to be \.
).
[A-Z]{2,63}
At the end it looks for 2 to 63 times a character between A-Z.
"TEST@TT03SFD.TT" should work for this regex. This is really hard to put in words so I hope it makes some sense... I would use ^[a-zA-Z0-9._%+-]{1,63}@([a-zA-Z0-9]{1,53}\.){1,125}[a-zA-Z]{2,63}$
instead.