"/" - start of regular expression "^" - anchor to beginning of string
Group: [a-z0-9]+ "[a-z0-9]" - Latin character or digit "+" - occurring ONE or more times
Group: (?:[.-][a-z0-9]+)* "(" - start of group "?:[.-_'+][a-z0-9]" - first character of group is allowed to be single character "." OR "-", followed by Latin character or digit "+" - occurring ONE or more times ")" - end of group "*" - group occurs ZERO or more times
"@" - mandatory single at sign
Second-level domain group and below: ([a-z0-9]+(?:[-][a-z0-9]+).)+ "(" - start groups "[a-z0-9]" - Latin character or digit "+" - occurring one or more times "(" - beginning of subgroup "?:[-][a-z0-9]" - single hyphen mandatory for subgroup, followed by Latin character or digit "+" - one or more times ")" - end of subgroup "" - subgroup occurs ZERO or more times "." - mandatory single dot ")" - end of group "+" - occurring ONE or more times
Top-level domain group: [a-z]{2,}$ "[a-z]" - Latin character "{2,}" - occurring TWO or more times
"$" - anchor to end of line "/" - end of regular expression "i" - expression case-insensitive flag (makes ranges [a-z] and [a-zA-Z] equivalent)
"gm" - only for success validation multiline in Test string section, these flags not needed in checking once string value