Regex for Email Address
Standard regular expression for validating email addresses per RFC 5322, matching username, at-symbol, domain name, and valid TLD extension.
⚡ Live Interactive Sandbox
Pattern Breakdown & Tokens
- • ^[a-zA-Z0-9._%+-]+ — mailbox name matching letters, digits, dots, plus and hyphens
- • @ — mandatory at-symbol delimiter
- • [a-zA-Z0-9.-]+ — domain host label
- • \.[a-zA-Z]{2,}$ — top-level domain extension (minimum 2 letters)
Code Snippets
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
const isValid = emailRegex.test(email); import re
pattern = r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$"
is_valid = bool(re.match(pattern, email)) matched, err := regexp.MatchString(`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$`, email) $isValid = preg_match('/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/', $email); Open the full tool: Open Full Regex Tester →
FAQ
How does this regular expression for Email Address work?
Standard regular expression for validating email addresses per RFC 5322, matching username, at-symbol, domain name, and valid TLD extension. The pattern is: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
How to use this regex in JavaScript and Python?
In JavaScript: new RegExp("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$").test(input). In Python: re.match(r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$", input).
Can I test complex regular expressions online?
Yes, use our full in-browser Regex Tester tool with live syntax highlighting, group capture table, and zero server uploads.