Skip to content
ToolUlkaa Tool
All tools

Text

Rich Text EditorWord CounterCharacter CounterText ReplacementText Case ConverterSpell CheckerArgument CompilerText to Base64Morse Code ConverterURL Encoder / DecoderJSON FormatterHash GeneratorRegex Tester

Categories

AcademicTextMathematicsStatisticsMachine LearningAIData ScienceFile
All tools
Text

Regex Named Groups Tester

Capture the level, service and message of a log line by name.

Try:
Mode

Matches

3 matches

INFO [auth] user signed in
WARN [billing] retrying payment
ERROR [search] index not found

Match details

#MatchPositionGroup 1Group 2Group 3levelservicemessage
1INFO [auth] user signed in0 to 26INFOauthuser signed inINFOauthuser signed in
2WARN [billing] retrying payment27 to 58WARNbillingretrying paymentWARNbillingretrying payment
3ERROR [search] index not found59 to 89ERRORsearchindex not foundERRORsearchindex not found

What the pattern means

  1. (?<level>start of capture group 1, named "level"
  2. INFOthe text "INFO"
  3. |or: match what is on the left or what is on the right
  4. WARNthe text "WARN"
  5. |or: match what is on the left or what is on the right
  6. ERRORthe text "ERROR"
  7. )end of the group
  8. \sa whitespace character
  9. +the previous item, one or more times, as many as possible (greedy)
  10. \[a literal "["
  11. (?<service>start of capture group 2, named "service"
  12. \wa word character (letter, digit or underscore)
  13. +the previous item, one or more times, as many as possible (greedy)
  14. )end of the group
  15. \]a literal "]"
  16. \sa whitespace character
  17. +the previous item, one or more times, as many as possible (greedy)
  18. (?<message>start of capture group 3, named "message"
  19. .any character except a line break
  20. +the previous item, one or more times, as many as possible (greedy)
  21. )end of the group

This tester uses your browser's JavaScript regex engine. Other flavours (PCRE, Python, Java, .NET) differ in lookbehind, named group syntax and flags, so check there before reusing a pattern.

  1. Tools
  2. Text
  3. Regex Tester
  4. Regex Named Groups Tester

About Regex Named Groups Tester

This page opens with a pattern that splits a log line into three named groups: level, service and message. A named group is written (?<name>...), and the table under the tester shows one column per name. It is free, needs no sign-up and runs in your browser, so nothing you enter is uploaded.

The three sample lines give 3 matches, one per line. In code, the groups are on the match object as match.groups.level, match.groups.service and match.groups.message, which reads far better than match[1], match[2] and match[3].

Group names must be valid identifiers and unique within the pattern. Named groups are part of modern JavaScript and of many other languages, though the syntax differs a little between them.

How to use Regex Named Groups Tester

  1. 1Type or paste a regular expression into the pattern field, or pick one from the Try chips: email, URL, phone, date, IPv4 or hex colour.
  2. 2Toggle the flags you need: g for all matches, i to ignore case, m for multiline, s so the dot matches line breaks, u for Unicode and y for sticky.
  3. 3Paste your test text. Matches are highlighted as you type.
  4. 4Read the table under the tester for each match, its position, and its numbered and named groups.
  5. 5Switch to Replace to try a replacement string. Use $1, $2 and $<name> to reuse groups, then copy the result.
  6. 6Read "What the pattern means" to check the pattern does what you think.

Features

  • JavaScript regex flavour with flags g, i, m, s, u and y.
  • Live highlighted matches, with alternating colours so neighbouring matches stay distinct.
  • Numbered and named capture groups in a table.
  • Replace mode with $1, $<name> and $& in the replacement.
  • A plain-English explanation of every token, with groups indented.
  • A small pattern library with real test strings.
  • Catastrophic backtracking protection: matching runs in a Web Worker and is stopped after a short time limit.
  • Clear error messages for an invalid pattern.

Worked examples

  • (?<level>INFO|WARN|ERROR)\s+\[(?<service>\w+)\]\s+(?<message>.+) → gives 3 matches with level, service and message

    Each line yields the three named values in the table.

Privacy: how it works

  • The pattern and the text are processed by code in this browser tab. Nothing is sent to Ulkaa or to any other server.

Tips

  • Escape the special characters . * + ? ( ) [ ] { } ^ $ | \ with a backslash when you mean them literally.
  • Prefer specific classes over the dot: [^"]* is faster and safer than .* when matching up to a quote.
  • Anchor a validation pattern with ^ and $, or it will match a valid piece inside invalid text.
  • Turn on the m flag when your text has several lines and you want ^ and $ per line.

Frequently asked questions

Is it really free?

Yes. There is no price, no trial and no credit card. Ulkaa Tool does the work with your own device, so there is no server bill to pass on to you.

Do I need an account?

No. There is no sign-up and no login. Open the page and use it. An Ulkaa account is not needed for anything on this tool.

Does it run in my browser?

Yes. Your pattern and text are processed by code running in your browser tab, on your own device.

Is my data uploaded?

No. Your pattern and text are never sent to Ulkaa or to anyone else. You can check this yourself by watching the Network tab in your browser developer tools while you use the tool.

Do named groups still have numbers?

Yes. A named group is also numbered by position, so $1 and $<name> can refer to the same text.

More Regex Tester pages

  • Regex TesterType a pattern and some text, and see every match, group and replacement as you type.
  • Email Validation RegexCheck which lines look like an email address, and see why the others do not.
  • URL Regex TesterFind web addresses in a block of text with a pattern you can edit.
  • Phone Number Regex TesterMatch phone numbers written with brackets, dashes, dots or spaces.
  • Date Regex TesterMatch YYYY-MM-DD dates and rewrite them with named groups.
  • IPv4 Address Regex TesterMatch four numbers from 0 to 255 separated by dots.
  • Hex Color Regex TesterFind #rgb and #rrggbb colours in a stylesheet or text.
  • Password Strength RegexSee which sample passwords pass a rule built from lookaheads.
  • Remove Extra Spaces With RegexReplace runs of whitespace with a single space.
  • Extract Numbers With RegexPull every number, including decimals and negatives, out of text.
  • Regex Replace With Capture GroupsReorder words with $1 and $2 in the replacement.

Ulkaa Apps

  • Ulkaa
  • Calendar
  • Task
  • Note
  • Disk
  • Call
  • Contact
  • Mail
  • Finance
  • Health
  • Office
  • Work
  • Workspace
  • Halum
  • Jaal
  • Islam
  • Game
  • Weather
  • Campus
  • News
  • Developer
  • Help
  • Account
About·Privacy·Terms·© 2026 Ulkaa

What is Ulkaa Tool?

Ulkaa Tool is a free collection of fast, privacy-friendly online tools from Ulkaa Network. Calculate your GPA and CGPA, edit rich text, count words and characters, replace text and more — all in your browser.

Every tool runs entirely in your browser — no sign-up, and your data never leaves your device.

Academic

  • GPA Calculator
  • CGPA Calculator
  • Citation Generator
  • Quiz Maker

Text

  • Rich Text Editor
  • Word Counter
  • Character Counter
  • Text Replacement

Ulkaa

  • Ulkaa
  • Ulkaa News
  • Ulkaa Campus
  • Ulkaa Tool
  • Ulkaa Game
  • Ulkaa Weather
  • Ulkaa Islam

Company

  • About Ulkaa
  • Careers
  • Support
  • Help
  • Privacy Policy
  • Terms of Service
  • Disclaimer
  • Sitemap

© 2015-26, Ulkaa. All rights reserved.
Facebook PageLinkedIn CompanyX (Twitter) ProfileInstagram ProfileGitHub Account