Skip to content

typescript.regex_compile

Performance High

Detects regex compilation inside loops or hot paths.

Regex in loops:

  • Parses repeatedly — Same pattern compiled per iteration
  • Wastes CPU — 10-100x slower than cached
  • Hurts latency — Measurable request delays
// ❌ Before (compiling in loop)
for (const line of lines) {
const match = new RegExp('\\d+').exec(line); // Compiles every iteration!
if (match) {
count++;
}
}
// ✅ After (compile once)
const numberRegex = /\d+/;
for (const line of lines) {
if (numberRegex.test(line)) {
count++;
}
}
  • new RegExp() inside loops
  • Regex compilation in request handlers
  • Dynamic regex patterns that could be static

Unfault can hoist regex to module level constants.