Test regular expressions live

Test regular expressions against live text in your browser: highlighted matches, capture groups, instant error messages. Free, nothing uploaded.

Type a pattern, paste your text, and every match lights up as you type — with capture groups listed per match. The evaluator is your own browser’s regex engine (JavaScript semantics), which is exactly the dialect your frontend and Node.js code will run.

Invalid patterns show the engine’s real error message, so you fix the escape or the unbalanced group instead of guessing. Matching runs locally and stops after 1000 matches, so a runaway pattern can’t freeze your tab.

Flags work as usual: i for case-insensitive, m for multiline anchors, s for dotall, u for unicode. The global flag is implied for iteration — every match is found, not just the first.

Frequently asked questions

Which regex flavor does this use?
JavaScript (ECMAScript) — the same engine as your browser and Node.js. PCRE/Python differences like lookbehind support and \p{…} classes follow JS behavior.
Are capture groups shown?
Yes — each match lists its capture groups in order, so you can verify nested patterns before shipping them.
Is my text uploaded anywhere?
No. Matching runs in your browser tab. Logs and user data pasted as test input stay on your device.