Regex test and match

All text stays in your browser. util.work does not store your regex pattern or test text on the server.

Pattern

Active flags: g

Test Text

Match Results

Match count

2

Match 1 at index 8

support@example.com

Match 2 at index 31

team@util.work

What this regex tester does

This page helps you test regular expressions online by entering a pattern, toggling regex flags, and checking how the expression matches real text. It is designed for quick debugging and inspection without switching to a separate development tool.

If you searched for terms like regex tester, regular expression tester, regex online, or regex match tool, this page is built to give you a fast answer with a clear interface.

What is a regex

A regex, or regular expression, is a pattern language used to search, match, validate, and transform text. Developers often use regex to find emails, URLs, tokens, repeated words, and other structured text fragments.

Why regex flags matter

Regex flags change how a pattern behaves. For example, the global flag finds all matches, ignore case removes case sensitivity, and multiline changes how anchors like ^ and $ behave across multiple lines.

Common regex use cases

Common regex use cases include input validation, parsing logs, matching file paths, extracting identifiers, checking email-like strings, and cleaning or transforming text data during development.

Basic regex syntax

Most regex patterns are built from a small set of core building blocks. Literal text matches itself, a dot . matches almost any character, and character classes such as [abc] or [a-z] match from a specific set. Anchors like ^ and $ match the start and end of a string or line, while groups (...) help organize subpatterns.

PatternMeaning
.Any single character
^Start of string or line
$End of string or line
\dA digit
\wA word character
\sWhitespace
[abc]One character from a set
[^abc]One character not in a set
(...)Capturing group
(?:...)Non-capturing group

Quantifiers and repetition

Quantifiers control how many times something may appear. Use * for zero or more, + for one or more, and ? for optional matches. Curly braces like {2,5} match a specific range. These are especially useful when validating lengths, parsing tokens, or scanning repeated separators.

  • a* matches zero or more a characters
  • a+ matches one or more a characters
  • a? makes a optional
  • \d{4} matches exactly four digits
  • \w{3,8} matches between three and eight word characters

Regex flags reference

Flags change how the same pattern behaves. In JavaScript-style regular expressions, the most common options are global for all matches, ignore case for case-insensitive matching, multiline for line-based anchors, dotAll for letting the dot match newlines, and unicode for better Unicode handling.

FlagUse
gFind all matches instead of stopping after the first
iIgnore case differences
mTreat each line as having its own start and end
sAllow dot to match newline characters
uEnable better Unicode-aware behavior

Useful regex examples

Regex examples are often the fastest way to learn. The following patterns are not universal validators for every edge case, but they are practical starting points for everyday development work.

TaskExample regex
Email-like string\b\w+@\w+\.\w+\b
Simple URLhttps?:\/\/[^\s]+
Hex color#(?:[0-9a-fA-F]{3}){1,2}\b
ISO date\b\d{4}-\d{2}-\d{2}\b
Digits only^\d+$
Trim repeated spaces\s+

Regex tips for developers

Good regex patterns are not only short. They are readable, intentional, and easy to debug. When a pattern becomes hard to understand, break it into groups, test incrementally, and confirm what each quantifier is doing before adding more complexity.

  • Start with the simplest pattern that can prove the idea
  • Use anchors when you mean full-string validation
  • Prefer character classes over long lists of alternatives
  • Be careful with greedy quantifiers like .*
  • Test with both matching and non-matching examples
  • Use non-capturing groups when you do not need captures

Common regex mistakes

Many regex bugs come from overly broad matches, missing anchors, or forgetting how flags affect behavior. Another common mistake is assuming a quick pattern is a perfect validator for every real world format. Regex is powerful, but some formats are more complex than a single expression should handle.