Regex Tester
Test and validate regular expressions by entering a pattern, flags, and sample text.
The tester highlights matches, displays the number of hits, and shows captured groups
to help you understand how your regular expression behaves.
You can freely combine flags such as global, case-insensitive, or multiline, and instantly see the results reflected in the output.
Syntax errors are detected immediately and shown as clear error messages, making it easier to debug and refine complex patterns.
This tool is useful for developers, data analysts, and anyone working with text processing, log analysis, form validation, or search patterns.
All testing is performed locally in your browser, and no input text or patterns
are sent to any server, allowing safe and private experimentation.
Regular Expression Tester
Regular expressions are powerful for searching, validating, and extracting text, but complex patterns are hard to reason about without feedback. This regex tester lets you enter a pattern and sample text, then inspect matches, groups, and behavior while you iterate.
Common use cases
- Validate input patterns: Test patterns for emails, IDs, slugs, filenames, and log lines.
- Extract structured data: Check capture groups before using a regex in scripts or backend code.
- Debug replacements: Understand why a pattern matches too much, too little, or nothing at all.
Regex review tip
Be careful with overly broad patterns and catastrophic backtracking in production code. Test representative examples, including invalid inputs and edge cases, before relying on a pattern in a form, parser, or data pipeline.
Articles for this tool
Practical Regex Recipes: Copy-Paste Search and Replace Patterns
Ready-to-use regular expressions for emails, URLs, dates, whitespace cleanup, and more—each with what it matches—plus everyday text-processing tips.
Regular Expressions for Engineers: Metacharacters, Groups, Lookaheads, and ReDoS
A complete practical guide to regex — from basic metacharacters to named capture groups, lookaheads, non-greedy quantifiers, and how to avoid catastrophic backtracking (ReDoS).
How to Count Characters and Clean Text for Docs, Forms, and Code Snippets
Use character counts, line counts, whitespace cleanup, and HTML escaping to prepare text for documentation, metadata, forms, and development workflows.
Recent Articles
curl Options Cheat Sheet: What -X, -H and -d Actually Do
A reference for the curl options you meet in real API work: why -d already implies POST, how -d differs from --data-raw, the @ prefix that silently reads a file, single vs double quotes, and why -k and -L deserve more caution than they usually get.
Converting Between JSON Schema and Zod: How required Maps to .optional()
Inside a two-way converter that turns JSON Schema into a Zod schema and Zod code back into JSON Schema. Covers the inverted defaults between required and .optional(), the constraint mapping table, and how the Zod side is parsed without executing any code.
SQL Clause Order Reference: Why WHERE Can't See Your SELECT Alias
The order you write SQL clauses is not the order the database runs them. A reference for the logical execution order (FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT), why aliases fail in WHERE, when to use WHERE vs HAVING, and the MySQL/PostgreSQL differences that bite.
Unified Diff Format Reference: Reading @@ Hunks in git diff Output
How to read the unified diff format git produces: what the four numbers in @@ -12,7 +12,9 @@ mean, why a one-character edit shows as a whole-line replacement, the whitespace and line-ending traps, \ No newline at end of file, combined @@@ diffs on merges, and rename detection via similarity index.
UTC to JST Reference: The 9-Hour Offset, Cheat Sheet & Timezone Pitfalls
Convert between UTC and JST (Japan Standard Time) with a cheat sheet. Covers what Z and +09:00 mean in ISO 8601, when JavaScript date parsing silently shifts by 9 hours, MySQL/PostgreSQL timezone behavior, and why GitHub Actions cron always runs in UTC.
CREATE TABLE Reference: MySQL vs PostgreSQL vs SQLite Types & Constraints
A cross-database CREATE TABLE (DDL) reference with cheat sheets for data types, auto-increment keys (AUTO_INCREMENT / IDENTITY / rowid), foreign key ON DELETE behavior, and the CHECK constraint that MySQL silently ignores.