Con este script en JavaScript vamos a validar que las matrículas introducidas en un campo tengan el formato correcto.

Formatos que se validan

  • Matrículas nuevas: 1234BBB
  • Matrículas antiguas: B1234AA
  • Matrículas más antiguas: B123456
  • Matrículas de ciclomotor: C1234BBB

El código

const validate_enrollment = (value) => {
    let str = value.toUpperCase().replace('-', '');
    let new_enrollment = /^\d\d\d\d[BCDFGHJKLMNPRSTVWXYZ][BCDFGHJKLMNPRSTVWXYZ][BCDFGHJKLMNPRSTVWXYZ]$/;
    let med_enrollment = /^[A-Z]{1,2}\d\d\d\d[A-Z]{1,2}$/;
    let old_enrollment = /^[A-Z]{1,2}\d\d\d\d\d\d$/;
    let motorcycle = /^C\d\d\d\d[BCDFGHJKLMNPRSTVWXYZ][BCDFGHJKLMNPRSTVWXYZ][BCDFGHJKLMNPRSTVWXYZ]$/;
    let response = false
    if (new_enrollment.test(str) || med_enrollment.test(str) || old_enrollment.test(str) || motorcycle.test(str)) {
        return true;
    }
    return false;
}

validate_enrollment('1234ABS');

Con este script no validamos que la matrícula exista: solo verificamos que su formato sea correcto.

Es un script bastante simple pero eficiente. Puedes verlo también en el repositorio de GitHub.