Rexact
Cheatsheet

Regex French APE/NAF business activity code

An APE code isn't just "4 digits and a letter": INSEE's NAF rev. 2 classification has exactly 21 sections, lettered A through U with no gap - letters V through Z exist in no section at all. A Java utility published on GitHub nonetheless accepts any letter from A to Z, as does a regex republished on regex101.com. A forum post outright reverses the requested format (4 letters + 1 digit instead of 4 digits + 1 letter), even though the previous message in that very thread had stated the correct rule. Here's a pattern respecting the real 21 sections, compared against these three attempts.

/^[0-9]{4}[A-U]$/
passes 22/22 cases

Comparison of existing patterns

Implementation

const re = new RegExp("^[0-9]{4}[A-U]$", "");
re.test(input);

Limits

  • Valide seulement la FORME (4 chiffres, 1 lettre parmi A-U) : ne vérifie pas que la combinaison précise des 4 chiffres correspond à une sous-classe réellement définie dans la nomenclature NAF — un code syntaxiquement valide selon ce motif peut ne correspondre à aucune activité réellement répertoriée.
  • Ne consulte pas le répertoire SIRENE de l'INSEE : seule une requête à l'API officielle (recherche-entreprises.api.gouv.fr) confirme le code APE réellement attribué à une entreprise donnée.
  • Exige une chaîne sans séparateur ni espace : le point parfois utilisé à l'affichage entre les 2 premiers et les 2 derniers chiffres n'existe pas dans le code officiel lui-même.
  • Ne s'applique qu'à la France : les autres pays de l'Union européenne utilisent leur propre déclinaison nationale de la nomenclature NACE (par ex. la nomenclature belge NACE-BEL), avec des formats de code différents.

Related pages