Regex Tester
Test patterns with live matches.
Regex Tester at a glance
Regex Tester is a free online developer tool you can use right now to test patterns with live matches โ no account, no install and no usage limit. It runs entirely inside your browser, so whatever you enter stays on your own device.
- Price
- Free โ no trial, no paid tier, no watermark
- Sign-up
- Not required
- Where it runs
- In your browser โ nothing is uploaded to a server
- Works on
- Chrome, Safari, Firefox and Edge โ desktop, tablet and phone
- Category
- Developer Tools
โ 2 matches: [email protected][email protected]
About Regex Tester
The Regex Tester lets you build and debug a regular expression against sample text, with matches highlighted live as you type. Capture groups are broken out separately, so you can see exactly what each part of your pattern caught.
It uses the JavaScript RegExp engine, which matters when you're copying patterns between languages. JavaScript has no lookbehind in older browsers, doesn't support recursive patterns at all, and treats named groups with the (?<name>...) syntax. A pattern lifted from a PCRE or Python example may behave differently or fail outright.
The flags do most of the practical work: g finds every match rather than just the first, i makes matching case-insensitive, and m makes ^ and $ match at line boundaries instead of only at the start and end of the whole string.
How to use Regex Tester
- Type or paste your regular expression.
- Add sample text underneath โ matches highlight as you type.
- Toggle the g, i and m flags and inspect the capture groups below.
Frequently asked questions
Which regex flavour does this use?
JavaScript's RegExp engine. Patterns written for PCRE, Python or Java mostly transfer, but recursion isn't supported and some lookbehind syntax varies by browser.
What do the g, i and m flags do?
g returns all matches rather than stopping at the first; i ignores case; m makes ^ and $ match at the start and end of each line instead of the whole string.
Why does my pattern match more than I expected?
Quantifiers are greedy by default โ .* takes as much as it can. Add a ? to make it lazy (.*?) so it stops at the first possible match.
Is my text private?
Yes โ matching runs entirely in your browser and nothing is uploaded.