Detectar si un Nif es correcto en Groovy

Groovy

En estos días he tenido que buscar una forma de detectar si un Nif español era o no válido para lo que me he ayudado de la Wikipedia. Y a continuación expongo lo que he hecho.

Función para detectar Nif correcto.

def nifValido (nif) {
  if (nif == "")
          return false
  def n = nif.toUpperCase()
  String NIF_STRING_ASOCIATION = "TRWAGMYFPDXBNJZSQVHLCKET"
  def dni = n[0..-2].toInteger()
  if ((n ==~ /^[0-9]{8}[A-Za-z]$/) && (n.contains(NIF_STRING_ASOCIATION.charAt(dni % 23).toString()))){
           log.info ("El nif $n es correcto")
           return true
  }
  log.info ("El nif $n No es correcto")
  return false
}

Enlaces de Referencia

Share
Esta entrada fue publicada en Groovy y etiquetada , , . Guarda el enlace permanente.

Una respuesta a Detectar si un Nif es correcto en Groovy

  1. KK dijo:

    No funciona, por favor revísalo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *