Skip to workstation

RegexCraft Studio

Visual Engine & ReDoS Watchdog

Test, explain, and export regular expressions — entirely in your browser with zero cloud egress.

  • Zero Cloud Egress
  • In-Browser Worker
  • No Account Required
Pattern & Test String
Length: 124 charsMatches: 0
match

Matches will populate live as you type.

Groups: 0Engine time: 0ms
Valid Pattern•124 chars•0 matches•0ms
100% In-Browser/0 byte egress

Why RegexCraft

The incumbents wrap regex debugging in ads, cloud uploads, and server-side timeouts. RegexCraft delivers a zero-egress, offline-first workstation with ReDoS protection, plain-English explainers, and honest multi-engine export.

CapabilityRegexCraftregex101RegExr
Privacy & ads100% in-browser · zero adsCloud save · adsCloud debugger · ads
Hang / ReDoS protection1.5s in-app worker watchdogServer-side timeoutCan freeze the tab
Explainer & diagramPlain-English + live railroadToken explanationColorized only
Honest multi-engine exportJS · Python · Go (RE2) · RustPHP / JS / PythonJS / Python
Works offlineOffline-firstOnline onlyOnline only
Account requiredNot requiredNot requiredNot required

Patterns that travel across engines

Copy-ready recipes for the engines RegexCraft exports to — JavaScript, Python, Go, and Rust — plus the PCRE2 and POSIX dialects most patterns are born in. Every snippet runs as written, with the quirk each engine enforces.

JavaScript — RegExp with matchAll

The engine RegexCraft itself runs on. Flags g/i/m/s/u/y, named groups, lookaround, and backreferences are all in — atomic groups and possessive quantifiers are not, so nested quantifiers like (a+)+ backtrack catastrophically. RegexCraft's watchdog terminates any match that overruns its budget.

// Flags: g = every match, m = ^/$ per line, u = unicode-aware
const emailRe = /\b(\w+)@(\w+)\.(\w{2,})\b/gmu;

// The test string — matches ignite the moment it is pasted
const text = "Reach ada@analytical.org or grace@usnavy.mil for notes";

// matchAll requires the g flag and yields one match object per hit
for (const m of text.matchAll(emailRe)) {
  // m.index = start offset; m[0] = full match; m[1]..m[3] = capture groups
  console.log(`${m.index}: ${m[0]} [user=${m[1]}, host=${m[2]}]`);
}
// → 6: ada@analytical.org [user=ada, host=analytical.org]
// → 28: grace@usnavy.mil [user=grace, host=usnavy.mil]

Frequently answered questions

Technical specifications on regex engines, offline Web Worker execution, catastrophic backtracking (ReDoS) mitigation, and zero-egress privacy.

01Is my pattern and test data private?
Completely. Parsing, matching, AST traversal, the SVG railroad diagram, and the export snippet are all generated inside an in-browser Web Worker. Nothing is uploaded, there is zero telemetry on your inputs, and the engine runs fully offline — your pattern and test strings never leave your machine.
02Why does the same regex behave differently across engines?
JavaScript, Python, and PCRE2 support backreferences, lookarounds, and nested backtracking. In contrast, Go and Rust run on the linear-time RE2 engine, which trades backreferences away for guaranteed O(n) execution and total immunity to catastrophic backtracking. RegexCraft highlights these engine caveats automatically in code export.
03What makes RegexCraft different from regex101 or RegExr?
Zero ads, zero cloud uploads, and no account required for core debugging. Alongside instant match highlighting, you get a plain-English structural explainer, an SVG railroad diagram, idiomatic code generation for modern runtimes, and an active backtracking watchdog that guarantees your browser tab never hangs.
04How does RegexCraft protect against catastrophic backtracking (ReDoS)?
A dedicated 1.5-second watchdog monitors each worker dispatch. If a pathological pattern with nested quantifiers (e.g. (a+)+$) overruns its compute budget, the worker is safely terminated and respawned. The UI surfaces an immediate advisory while remaining silky smooth and responsive.
05Does RegexCraft work offline?
Yes. The entire core suite — regex parsing, token matching, SVG railroad layout, and language codegen — executes client-side off the main thread. Once loaded, RegexCraft works seamlessly on air-gapped workstations and planes without an active internet connection.
06How do I export patterns to JavaScript, Python, Go, or Rust?
Open the Export tab, select your target language from the toolbar or tab dropdown, and copy the idiomatic snippet. Flags and named capture groups are translated cleanly, and engine-specific quirks (like RE2's lack of backreferences) are annotated directly in the generated code.

Ready to test and export regular expressions?

Zero cloud egress. 100% in-browser Web Worker. No ads, tracking, or remote API dependencies.

Open Workstation