Email Address
Matches typical email addresses, including subdomains and plus aliases, while avoiding most invalid strings.
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\bExample Matches
- support@example.com
- marketing.team+newsletter@company.co.uk
Test and debug regular expressions with real-time matching, interactive flag controls, and a growing library of copy-and-paste patterns for email, URLs, GitHub repositories, phone numbers, and more.
Enter a regex pattern and some text below. Matches will be highlighted automatically.
Preset loaded: Email Address
Load battle-tested regex for email addresses, GitHub repositories, URLs, phone numbers, UUIDs, and other everyday data formats. Each preset includes copy-ready text so you can verify matches instantly.
Matches typical email addresses, including subdomains and plus aliases, while avoiding most invalid strings.
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\bExample Matches
Captures full HTTP or HTTPS URLs with optional subdomains, ports, paths, and query parameters.
https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)Example Matches
Targets canonical GitHub repository URLs for organisations or users, allowing dots and dashes in names.
^https?:\/\/(?:www\.)?github\.com\/[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+\/?$Example Matches
Matches U.S. and Canadian phone numbers with optional country code, separators, or parentheses.
\b(?:\+1[-.\s]?)?(?:\(\d{3}\)|\d{3})[-.\s]?\d{3}[-.\s]?\d{4}\bExample Matches
Matches IPv4 addresses while constraining each octet to the 0–255 range.
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\bExample Matches
Finds UUID strings (version 1-5) typically used for database keys and API identifiers.
\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}\bExample Matches
Ensures lowercase URL slugs that use hyphens between words without trailing separators.
^[a-z0-9]+(?:-[a-z0-9]+)*$Example Matches
Captures ISO-formatted calendar dates, ideal for datasets and API payloads.
\b\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\bExample Matches
Type or paste your regular expression pattern into the pattern field.
Toggle flags like global (g), case-insensitive (i), or multiline (m) as needed.
Enter or paste your test string to see matches highlighted in real time.
Click on highlighted matches to view capture groups and named groups.
Data stays on your device
All processing runs locally in your browser. Nothing is sent to any server.
A real-time regex tester with instant match highlighting, capture group inspection, and a curated library of battle-tested patterns for common data formats.
8
Pattern Presets
6
Supported Flags
100% client-side
Processing
Matches highlight instantly as you type your pattern or test string.
Ready-made regex for email, URLs, GitHub repos, phone numbers, UUIDs, dates, and more.
Click any match to inspect numbered and named capture groups in detail.
Toggle global, case-insensitive, multiline, dotall, unicode, and sticky flags interactively.
This tester uses JavaScript's native RegExp engine, which supports all standard flags (g, i, m, s, u, y), named capture groups, and Unicode patterns.
No. All regex matching and highlighting happens entirely in your browser. Your test strings never leave your device.
Absolutely. Every preset pattern is copy-ready. Click 'Copy Pattern' or 'Copy Sample Text' to grab them instantly.
Flags modify how the pattern is applied. 'g' finds all matches, 'i' ignores case, 'm' makes ^ and $ match line boundaries, 's' lets . match newlines, 'u' enables Unicode, and 'y' matches from lastIndex.
Regular expressions (regex) are powerful pattern-matching tools used in programming, data validation, and text processing. Our regex tester helps you develop and debug patterns efficiently:
Regex flags modify how the pattern matching works:
Regular expressions are essential in many development scenarios:
Use these ready-made patterns to accelerate your workflow. Each regex is battle-tested for common SEO and data tasks, from validating email submissions to confirming GitHub repository URLs.
Matches typical email addresses, including subdomains and plus aliases, while avoiding most invalid strings. Ideal for Form and newsletter opt-in validation, Email list hygiene for marketing imports, Filtering contact information from documents.
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\bCaptures full HTTP or HTTPS URLs with optional subdomains, ports, paths, and query parameters. Ideal for Scraping or validating web links in content, Auto-linking URLs in CMS or chat applications, SEO audits that need to locate unsecured http links.
https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)Targets canonical GitHub repository URLs for organisations or users, allowing dots and dashes in names. Ideal for Populate curated GitHub lists, Validate user-submitted repository fields, Extract repos from documentation or blog posts.
^https?:\/\/(?:www\.)?github\.com\/[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+\/?$
Matches U.S. and Canadian phone numbers with optional country code, separators, or parentheses. Ideal for Form validation for contact or checkout flows, Normalizing call lists for outbound teams, Detecting phone numbers in support transcripts.
\b(?:\+1[-.\s]?)?(?:\(\d{3}\)|\d{3})[-.\s]?\d{3}[-.\s]?\d{4}\bMatches IPv4 addresses while constraining each octet to the 0–255 range. Ideal for Log parsing and analytics, Firewall configuration checks, Data masking for exported reports.
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\bFinds UUID strings (version 1-5) typically used for database keys and API identifiers. Ideal for Database audits and migrations, API payload validation, Debugging distributed tracing logs.
\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}\bEnsures lowercase URL slugs that use hyphens between words without trailing separators. Ideal for Content management systems, E-commerce product URL validation, SEO tooling and audits.
^[a-z0-9]+(?:-[a-z0-9]+)*$
Captures ISO-formatted calendar dates, ideal for datasets and API payloads. Ideal for Event scheduling data, API request validation, Spreadsheet cleanup.
\b\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\b