Practical email address regex
A deliberately practical email check for forms that require one @ sign, a dotted domain, and no whitespace.
^[^\s@]+@[^\s@]+\.[^\s@]+$Open breakdown →REGEX TERMINAL / JS RUNTIME
Decode, test, and understand JavaScript regular expressions without leaving the browser.
Local tools stay in this browser. Your pattern is sent to Groq only when you request an AI summary.
PROCESS / 03 STEPS
Start with deterministic browser tools. Add an AI explanation only when you want another layer of context.
Paste the pattern without surrounding slash delimiters, then add flags in their own field.
Read the syntax map, select individual tokens, and test sample text directly in your browser.
Request an optional plain-language AI summary when the deterministic tools are not enough.
RUNTIME / JAVASCRIPT
Regexplain targets the JavaScript / ECMAScript regular-expression flavor and compiles patterns with the browser runtime. That makes the local tester useful for the environment where your front-end code will actually run.
A successful match is evidence about text shape, not truth. Regex validates format, not meaning or strength; business rules, deliverability, security, and real-world existence need separate checks.
MANUAL / FAQ
LIBRARY / 05 PATTERNS
Practical patterns with explicit tradeoffs, test strings, and common mistakes.
A deliberately practical email check for forms that require one @ sign, a dotted domain, and no whitespace.
^[^\s@]+@[^\s@]+\.[^\s@]+$Open breakdown →A password format check requiring lowercase, uppercase, and a digit across 12 to 64 allowed characters.
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[A-Za-z\d@$!%*?&]{12,64}$Open breakdown →A North American-style phone check with an optional +1 country code, paired area-code parentheses, and common separators.
^(?:\+1[ .-]?)?(?:\(([2-9]\d{2})\)|([2-9]\d{2}))[ .-]?([2-9]\d{2})[ .-]?(\d{4})$Open breakdown →A conservative web URL check for HTTP(S), dotted hostnames, and an optional path, query, or fragment.
^https?:\/\/(?:www\.)?[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\.[a-z]{2,})+(?:[/?#][^\s]*)?$ [flags: i]Open breakdown →A CSS-oriented hex color check accepting 3-, 6-, or 8-digit notation with an optional leading #.
^#?(?:[0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})$ [flags: i]Open breakdown →