{ } Formatters

Regex Tester & Builder

Live regex testing with match highlighting, capture groups, and flag controls.

Live matching Group capture All JS flags Private

How the Regex Tester & Builder Works

The ByteKiln Regex Tester runs your pattern against the test string using the browser's native JavaScript RegExp engine. Results update live as you type.

Match highlighting

Every match is highlighted in the preview panel. Non-matching text is shown in muted colour so the matched regions stand out at a glance.

Capture groups

Each result card shows the full match, its index position in the string, and the value of each capture group. Named groups ((?<name>…)) are shown with their label.

Quick examples

The toolbar includes ready-made patterns for email addresses, URLs, IPv4 addresses, ISO dates, and hex colours — click any to load it immediately.

FAQ

Short answers for the things developers usually ask before trusting a tool.

What regex flavour does this use?

The Regex Tester uses the browser's native JavaScript RegExp engine. This means it supports all standard ES2024 features including named capture groups, lookbehind assertions, and the /v (Unicode sets) flag.

What do the flag buttons do?

The flags control how matching works: g (global) finds all matches instead of just the first, i (case-insensitive) ignores letter case, m (multiline) makes ^ and $ match line boundaries, s (dotAll) makes . match newlines, and u enables full Unicode mode.

How do I see capture group results?

Each match card in the results panel shows numbered capture groups (Group 1, Group 2…) and named groups in quotes. Named groups use the (?<name>…) syntax.

Is my test input sent to a server?

No. Regex testing runs entirely in the browser using JavaScript's native RegExp API. Nothing is sent to any server.

Why does the tester show zero matches even though I think the pattern is correct?

The most common cause is a missing g flag — without it, only the first match is found. Also check that backslashes are properly escaped: in the pattern field, \d means a digit, but if you type literally \d you may need to check the input. The error message beneath the pattern field pinpoints invalid syntax.

Related tools

Useful follow-ups when one conversion usually turns into three more.