Regex for Valid Email Address
Use this when you need a lightweight email format check in forms or ETL cleanup. It avoids spaces and requires a single @ plus a dot-delimited domain.
The expression
/^[^\s@]+@[^\s@]+\.[^\s@]+$/iHow to read it
Anchor: the match must start at the beginning of the string.
Anchor: the match must run to the end of the string.
\s matches any whitespace, including tabs and newlines.
A negated class [^ … ] matches anything except the listed characters.
i — ignore case
Validate your own text, line by line
no inputThis expression is anchored, so it asks whether a whole string is valid. Each line above is tested on its own — it will not find a match inside a longer sentence.
Examples, checked in your browser
4/4 verifiedjane.doe@example.com
Matches.
alerts+ops@tinapps.io
Matches.
missing-at-symbol.example.com
No match — this is the kind of input the pattern rejects.
bad space@example.com
No match — this is the kind of input the pattern rejects.
Use it in code
3 languagesconst regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/i;
regex.test(input);import re
pattern = re.compile(r"^[^\s@]+@[^\s@]+\.[^\s@]+$", re.IGNORECASE)
bool(pattern.search(input))re := regexp.MustCompile("(?i)^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$")
matched := re.MatchString(input)Other validation patterns
6URL Slug
/^[a-z0-9]+(?:-[a-z0-9]+)*$/
Strong Password
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z\d]).{12,}$/
UUID v4
/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i
IPv4 Address
/^(?:25[0-5]|2[0-4]\d|1?\d?\d)(?:\.(?:25[0-5]|2[0-4]\d|1?\d?\d)){3}$/
Hex Color
/^#?(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/
Semantic Version
/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/