REGEXVAULTv2.0
Localization/Postal Codes
Verified Safe

Italian CAP (Codice di Avviamento Postale) Regex for JavaScript

/^(?!00000)[0-9]{5}$/

What this pattern does

This page provides a comprehensive, battle-tested regular expression for matching italian cap (codice di avviamento postale), ported and verified for JavaScript. A rigorously tested regex reduces debugging time and protects your application from edge-case failures. The snippet below is ready to drop into your JavaScript project — whether you're validating in an Express middleware, a Next.js API route, or a client-side form.

Javascript Implementation

Javascript
// Italian CAP (Codice di Avviamento Postale)
// ReDoS-safe | RegexVault — Localization > Postal Codes

const italianCapCodiceDiAvviamentoPostaleRegex = /^(?!00000)[0-9]{5}$/;

function validateItalianCapCodiceDiAvviamentoPostale(input: string): boolean {
  return italianCapCodiceDiAvviamentoPostaleRegex.test(input);
}

// Example
console.log(validateItalianCapCodiceDiAvviamentoPostale("00100")); // true

Test Cases

Matches (Valid)
Rejects (Invalid)
0010000000
20121100000
101000010
80100ABCDE
011000010A

When to use this pattern

This pattern is drawn from the Localization > Postal Codes category and carries a ReDoS-safe certification. That matters for JavaScript developers because especially critical in long-running Node.js event loops where a ReDoS vulnerability can block the entire process. RegexVault audits patterns against known backtracking attack vectors, ensuring you have the necessary context before using this regex in a high-stakes production environment.

Common Pitfalls

San Marino (within Italy geographically) uses Italian-format postal codes (47031-47899). Vatican City uses 00120. These are technically separate countries using the Italian postal system.

Technical Notes

Italian CAP ranges: 00xxx (Rome/Lazio area) to 98xxx. 00100 is Rome. Ranges are broadly north-to-south (20xxx Milan, 80xxx Naples). San Marino uses 4780x, Vatican City uses 00120.

Have a pattern that belongs in the vault?

Submit it for review — community-verified patterns get credited to your GitHub handle. Free submissions join the queue. Priority review available for $15.

Submit a Pattern