Rexact
Cheatsheet

Regex Spanish licence plate (current format)

Since September 2000, a Spanish plate is written 0000 BCD: 4 digits from 0000 to 9999 and 3 consonants, from BBB to ZZZ. The General Vehicle Regulation (Annex XVIII) removes 'the five vowels and the letters Ñ and Q'. Real attempts go wrong in three ways: a PHP project accepts any letter, so '1234 ABC' and '1234 BCQ' pass; the npm package spanish-car-plate normalizes its input with '[^A-Z0-9]*', which accepts any separator; and CodeCornTech's regex is right, but not for older formats. Here's a strict pattern, compared against those attempts.

/^[0-9]{4} ?[BCDFGHJKLMNPRSTVWXYZ]{3}$/
passes 22/22 cases

Comparison of existing patterns

Implementation

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

Limits

  • Valide seulement la FORME du format courant (depuis 2000) : ne vérifie pas que la plaque est attribuée par la DGT. Le BOE ne retire que les cinq voyelles, Ñ et Q (et les digrammes CH et LL) : des combinaisons de consonnes comme « CCH » restent légales et passent.
  • Les plaques spéciales (préfixe E pour les véhicules spéciaux, R pour les remorques, C pour les cyclomoteurs) décrites par le BOE et les formats provinciaux d'avant 2000 (« M-1234-AB », « M-960.985 ») ne sont pas couverts : ils sont rejetés.
  • L'espace entre les chiffres et les lettres est facultatif ; la plaque officielle a une espace. Majuscules ASCII seulement : « 1234 bcd » est rejeté.
  • Aucune plage fictive officielle n'existe pour l'Espagne ; les exemples du corpus sont construits à partir de la règle du BOE (0000 BBB et 9999 ZZZ sont les bornes citées par le texte).

Licence plates for other countries

Related pages