Home / Developer Tools / Regex Tester

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

  1. Type or paste your regular expression.
  2. Add sample text underneath โ€” matches highlight as you type.
  3. 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.

More Developer Tools