Regex Rambler · Live matching · Plain English

A regex tester that explains itself.

Type a pattern, paste some text, see matches highlight in real time. Rambler reads your regex aloud — "match one or more digits, then a dash, then…" — so you know exactly what it does before you commit it to production.

/ /
Plain English
Pattern explanation appears here as you type.
Replace with
Test string
Matches 0
No matches yet — try a pattern above.
Sample patterns · Click to load common ones worth memorizing

Regex, explained.

What's the "Rambler" explanation actually doing?

It walks through your regex token by token and describes each piece in plain English. Not a replacement for learning regex, but it's much faster than mentally simulating \b[A-Z][a-z]*\b every time.

What flags should I use?

g for finding all matches (default). i for case-insensitive. m so that ^ and $ match per line. s to let . match newlines. u for unicode-aware matching.

Why isn't my regex matching?

Three common reasons. One: you forgot the g flag and are only seeing the first match. Two: you're using . but your text has newlines (add s). Three: you need \s for spaces, not literal spaces in character classes.

What's the difference between (abc) and (?:abc)?

(abc) is a capturing group — you can reference it later via $1, \1, etc. (?:abc) is non-capturing — it groups for operators like + or | but doesn't store the match. Use non-capturing when you don't need the value back.

What flavor of regex is this?

JavaScript's RegExp. Very close to PCRE but with some differences — no lookbehind in older browsers, no possessive quantifiers, different named group syntax. If you paste a PHP or Python pattern, some things may not work. Ask in the URL bar.

Is catastrophic backtracking a thing here?

Yes — nested quantifiers like (a+)+ can hang the engine. Rambler runs every pattern with a 100ms timeout guard. If your regex is too slow, you'll get an error instead of a frozen tab.