Regex plaque d'immatriculation britannique (format actuel)
Depuis 2001, une plaque britannique s'écrit AB12 CDE : 2 lettres de zone, un identifiant d'âge à 2 chiffres, 3 lettres aléatoires. Le DVLA publie les règles : l'identifiant d'âge vaut 02 à 29 (mars-août) ou 51 à 79 (septembre-février), jamais 00, 01 ni 30 à 50, et les lettres de zone n'utilisent jamais I, Q ni Z. Les trois tentatives réelles que j'ai relues sont des « 2 lettres, 2 chiffres, 3 lettres » : « AB00 CDE », « AB30 CDE » et « IA12 ABC » passent partout. Voici un motif qui borne l'identifiant d'âge et les lettres de zone, comparé à ces tentatives.
/^[A-HK-PRSVWY][A-HJ-NPR-Y](?:0[2-9]|[12][0-9]|5[1-9]|[67][0-9]) ?[A-Z]{3}$/passe 26/26 cas
Comparatif des patterns existants
Implémentation
const re = new RegExp("^[A-HK-PRSVWY][A-HJ-NPR-Y](?:0[2-9]|[12][0-9]|5[1-9]|[67][0-9]) ?[A-Z]{3}$", "");
re.test(input);Limites
- Valide seulement la FORME du format courant (depuis 2001) : ne vérifie pas que la plaque est attribuée par le DVLA. Le motif borne la première lettre de zone à la liste d'INF104 et exclut I, Q, Z en deuxième lettre, mais la table complète des zones (qui limite la deuxième lettre selon la première) n'est pas reprise : « AY12 ABC » passe même si cette combinaison n'est pas attribuée.
- Les formats antérieurs (A123 ABC, ABC 123A, 1234 AB…) et les plaques d'Irlande du Nord (ABZ 1234) définis par le SI 2001/561 ne sont pas couverts : ils sont rejetés par ce motif.
- Les identifiants d'âge 80 et plus ne sont pas listés par INF104 : ils sont rejetés ici, et il faudra mettre le motif à jour quand le DVLA les émettra. Les identifiants 27 à 29 et 77 à 79 sont listés mais pas encore émis ; ils sont acceptés.
- Le DVLA ne dit rien des lettres I et Q parmi les 3 lettres aléatoires : le motif accepte n'importe quelle lettre. Majuscules ASCII seulement ; l'espace est facultatif (la plaque officielle l'a).
Plaques d’immatriculation d’autres pays
- plaque d'immatriculation allemande
- plaque d'immatriculation belge
- plaque d'immatriculation espagnole (format actuel)
- plaque d'immatriculation italienne
- plaque d'immatriculation néerlandaise (kenteken)
- plaque d'immatriculation polonaise
- plaque d'immatriculation portugaise
- plaque d'immatriculation SIV
- Toutes les plaques d’immatriculation par pays