Rexact
Cheatsheet

Regex code APE/NAF

Un code APE, ce n'est pas juste « 4 chiffres et une lettre » : la nomenclature NAF rév. 2 de l'INSEE ne compte que 21 sections, lettrées de A à U sans lacune — les lettres V à Z n'existent dans aucune section. Un utilitaire Java publié sur GitHub accepte pourtant n'importe quelle lettre de A à Z, tout comme une regex republiée sur regex101.com. Un message de forum, lui, inverse carrément le format demandé (4 lettres + 1 chiffre au lieu de 4 chiffres + 1 lettre) alors que le message précédent du même fil précisait pourtant la bonne règle. Voici un motif qui respecte les 21 sections réelles, comparé à ces trois tentatives.

/^[0-9]{4}[A-U]$/
passe 22/22 cas

Comparatif des patterns existants

Implémentation

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

Limites

  • 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.

Pages liées