Unsupported input
The tool may reject input that does not match the expected content, structure, or file type.
Fix: Confirm the tool input requirements and paste the correct type of data.
header • up to 320x100 / 728x90
Test and debug regular expressions
Test a pattern against text, inspect capture groups, and keep the match view visible.
content bottom • up to 300x250
sidebar • 160x600
Last reviewed:
A regular expression (regex) is a concise pattern language for matching and extracting parts of text, supported across virtually every programming language.
Regex Tester runs your regular expression against a body of text in the browser, highlighting every match and showing each capture group alongside the match position, so you can debug patterns without re-running your script.
The engine is JavaScript's built-in RegExp — the exact same implementation your Node.js or browser code will execute, so a pattern that matches here will match identically in production.
Start with the regex input you want to process in Regex Tester.
Get a regex result from Regex Tester that is ready to review, copy, and reuse in the next step of your workflow.
The tool may reject input that does not match the expected content, structure, or file type.
Fix: Confirm the tool input requirements and paste the correct type of data.
Missing fields or partial content can block processing or produce weak results.
Fix: Provide the full required input before running the tool.
Sample or placeholder values can lead to output that looks valid but is not ready for real use.
Fix: Replace placeholders with your actual values before relying on the result.
No. The tester uses the JavaScript regex engine, which covers ~99% of PCRE for common features (character classes, quantifiers, lookaheads, groups, backreferences). Possessive quantifiers, recursive patterns, and PCRE-specific modifiers are not supported — the tool flags them on paste.
Yes. The /u flag enables full Unicode handling — /\p{Letter}/u matches any Unicode letter, surrogate pairs are treated as single code points, and Unicode property escapes (\p{Emoji}, \p{Script=Greek}) all work. Toggle /u in the flag bar.
Use (?<name>pattern) to create a named capture. The sidebar shows each named group alongside its index. In the Replace tab, reference the group as $<name> in the substitution string.
The URL in your address bar encodes the current pattern, flags, and input — copy it to bookmark the test or share it with a teammate. Loading the URL restores the full session exactly.
Comfortably up to 5 MB of text (about 50,000 lines of code or a large JSON log file). Beyond that, live highlighting gets sluggish — the tool debounces updates to keep typing responsive and warns you if backtracking explodes.
Yes. A watchdog monitors execution time; if a pattern takes longer than 500ms, the tool halts and warns that the regex likely has catastrophic backtracking (nested quantifiers, ambiguous alternation). A link in the warning suggests typical refactors to fix the issue.
Continue the workflow with related tools for regex, adjacent input and output steps, or other utilities in the same category. You can also browse the full Visual & Testing Tools category for more options.
Test JSONPath expressions against JSON data
Test XPath expressions against XML
Test internet ping, download speed, and upload speed in your browser with a live gauge, connection details, and same-origin Mbps measurements.
Compare two texts and highlight differences
View and preview HTML
View and explore JSON data
Edit and preview Markdown with live preview
Preview Markdown as rendered HTML
View and explore XML documents
View and explore YAML data
Test Java-style regular expressions with ECMAScript-equivalent matching and group capture
Score password strength with length, character variety, repeated-pattern checks, and practical suggestions for safer credentials.