spanish-car-plate

Spanish Car Plate validation

Usage no npm install needed!

<script type="module">
  import spanishCarPlate from 'https://cdn.skypack.dev/spanish-car-plate';
</script>

README

npm Codacy grade Travis (.org) Coverage Status Known Vulnerabilities npm bundle size (minified)

Spanish Car Plate

Spanish car plate validation
Validación de matriculas de coches en España

Installation

npm i spanish-car-plate

Usage

isValid()

import { isValid, isOld } from "spanish-car-plate";

isValid("1234BCD"); //=> true
isValid("1234 FGH"); //=> true
isValid("2345-JKL"); //=> true

// note: old valid plates also returns true
isOld("A 0849 CS") === isValid("A 0849 CS"); //=> true

isOld()

import { isOld } from "spanish-car-plate";

// one-letter code
isOld("A 0849 CS"); //=> true

// two-letter code
isOld("GI-1234-BL"); //=> true

// two/three-letter special code (such as ET for army cars and DGP for police cars)
isOld("DGP 1234 BL"); //=> true

isSpecial()

Police, Air force, Army, Navy, etc. have special plates.

import { isSpecial } from "spanish-car-plate";

isSpecial("DGP 3874"); //=> true
isSpecial("CNP-5764"); //=> true
isSpecial("E8720"); //=> true

getCounter()

import { getCounter } from "spanish-car-plate";

getCounter("1234 BCD"); //=> "BCD"
getCounter("A-0849 CS"); //=> "CS"

getProvinceName()

It is possible to get the province's name from old plates

import { getProvinceName } from "spanish-car-plate";

getProvinceName("B 1234 BL"); //=> "Province of Barcelona"
getProvinceName("M-1234 BL"); //=> "Community of Madrid"
getProvinceName("SO 1234 BL"); //=> "Province of Soria"

getProvinceCode()

It is possible to get the province's code from old plates

import { getProvinceCode } from "spanish-car-plate";

getProvinceCode("B 1234 BL"); //=> "B"
getProvinceCode("M 1234 BL"); //=> "M"
getProvinceCode("SO-1234 BL"); //=> "SO"

getSpecialCode()

import { getSpecialCode } from "spanish-car-plate";

getSpecialCode("DGP1234"); //=> "DGP"

getSpecialName()

import { getSpecialName } from "spanish-car-plate";

getSpecialName("DGP1234"); //=> "Spanish Police"
getSpecialName("CME1234"); //=> "Corps of the Mossos d'Esquadra"

getNumber()

import { getNumber } from "spanish-car-plate";

getNumber("DGP0001"); //=> "0001"
getNumber("CME1234"); //=> "1234"

parse()

Get all the information about the plate

Parse new plate

import { parse } from "spanish-car-plate";

parse("1234 BCD");
{
  "isSpecial": false,
  "isOld": false,
  "provinceCode": null,
  "provinceName": null,
  "number": 1234,
  "counter": "BCD"
}

Parse old plate

parse("GI 2345 BC");
{
  "isSpecial": false,
  "isOld": true,
  "provinceCode": "GI",
  "provinceName": "Province of Girona",
  "number": 2345,
  "counter": "BC"
}

Demo

https://spanish-car-plate.netlify.com/

Related

Reference

https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Spain