Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Funciones para validación alfanumérica de strings en Javascript


Una serie de funciones de string para validar si un string tiene o no números y caracteres, mayúsculas y minúsculas.


30/6/08 - He creado una serie de funciones de string para realizar unas comprobaciones sobre cadenas de caracteres, que voy a utilizar más adelante en un script más complejo. Comienzo explicando estas funciones sueltas, que quizás sirvan de utilidad a los lectores. También con la intención de presentar poco a poco la complejidad de mi objetivo final. Las funciones de validación de strings sirven para saber si las cadenas tienen o no números, letras, letras mayúsculas y minúsculas. Son una serie de funciones bien sencillas y parecidas entre si, que hacen uso de los métodos de la clase string de Javascript.

Estas funciones simplemente hacen el recorrido por el string en búsqueda de caracteres de un determinado tipo. Hacen el recorrido completo por todo el string hasta que encuentran un carácter del tipo buscado, de modo que se pueda saber seguro si hay o no caracteres de ese tipo. Veremos a continuación las distintas funciones:

Saber si el string contiene caracteres numéricos

Esta función recibe un string y devuelve 1 si se encuentran caracteres numéricos y 0 si no se encuentran.

var numeros="0123456789";

function tiene_numeros(texto){
   for(i=0; i<texto.length; i++){
      if (numeros.indexOf(texto.charAt(i),0)!=-1){
         return 1;
      }
   }
   return 0;
}


Hemos creado primero una variable global con los números posibles, del 0 al 9, que queremos buscar. Esa variable la utilizaremos dentro de la función.

La función hace un recorrido a todos los caracteres del string. Para cada uno se comprueba si está o no dentro de la variable numeros, creada con anterioridad.

Si estaba, se devuelve 1 (como se ejecuta el return, se sale de la función devolviendo el valor 1).

Si no estaba, entonces se hará el recorrido del string, carácter a carácter, hasta el final. Entonces se termina el bucle y se devuelve 0.

Esta función se puede probar con estas sentencias:

alert(tiene_numeros("ASAS1"));
alert(tiene_numeros("2asasasas"));
alert(tiene_numeros("asas2sG"));
alert(tiene_numeros("a...."));
alert(tiene_numeros("A22323G2.12"));


Podemos ver el ejemplo en marcha en una página aparte.

Saber si un string contiene letras

Veamos una función muy similar, para saber si un string contiene un carácter que sea letra, valiendo tanto las mayúsculas como minúsculas.

var letras="abcdefghyjklmnñopqrstuvwxyz";

function tiene_letras(texto){
   texto = texto.toLowerCase();
   for(i=0; i<texto.length; i++){
      if (letras.indexOf(texto.charAt(i),0)!=-1){
         return 1;
      }
   }
   return 0;
}


El algoritmo es prácticamente el mismo que la función anterior. Primero hemos creado un string con todas las letras del alfabeto. Luego hacemos un recorrido buscando en cada uno de los caracteres del string recibido por parámetro una de las letras del alfabeto.

La única particularidad es la llamada al método toLowerCase(), para convertir el texto que se recibe por parámetro a minúsculas y así que la búsqueda de letras no tenga en cuenta si son minúsculas o mayúsculas (ya que sólo buscamos si el string contiene letras).

Podemos probar el string con estas líneas de código:

alert(tiene_letras("1"));
alert(tiene_letras("22323232s"));
alert(tiene_letras("22323232sf"));
alert(tiene_letras("a2232323"));
alert(tiene_letras("A22323G2.12"));


Podemos ver el ejemplo en marcha aquí.

Saber si un string tiene letras minúsculas

Aquí vemos la función para comprobar si un string tiene caracteres en minúsculas. Es muy parecida a las que hemos visto anteriormente.

var letras="abcdefghyjklmnñopqrstuvwxyz";

function tiene_minusculas(texto){
   for(i=0; i<texto.length; i++){
      if (letras.indexOf(texto.charAt(i),0)!=-1){
         return 1;
      }
   }
   return 0;
}


Con su batería de pruebas:

alert(tiene_minusculas("1"));
alert(tiene_minusculas("22323232s"));
alert(tiene_minusculas("22323232sf"));
alert(tiene_minusculas("a2232323"));
alert(tiene_minusculas("A22323G2.12"));


Lo podemos ejecutar aquí.

Comprobar si un string tiene letras mayúsculas

Ahora veremos la función para ver si un string tiene letras mayúsculas. Es igual que la anterior, simplemente que tenemos una cadena con todas las letras en mayúscula para buscar en el texto recibido por parámetro.

var letras_mayusculas="ABCDEFGHYJKLMNÑOPQRSTUVWXYZ";

function tiene_mayusculas(texto){
   for(i=0; i<texto.length; i++){
      if (letras_mayusculas.indexOf(texto.charAt(i),0)!=-1){
         return 1;
      }
   }
   return 0;
}


Estas podrían ser las pruebas para comprobar el funcionamiento.

alert(tiene_mayusculas("1"));
alert(tiene_mayusculas("22323232s"));
alert(tiene_mayusculas("22323232sG"));
alert(tiene_mayusculas("a2232323"));
alert(tiene_mayusculas("A22323G2.12"));


Puedes ver en funcionamiento el script en el siguiente enlace.

Estas funciones las utilizaremos en el siguiente artículo, en el que voy a explicar la creación de un sistema para mostrar la seguridad de una clave, para decir qué tan segura es en función del número de caracteres, si tiene números y letras, si tiene mayúsculas y minúsculas, etc.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada
+ 3 comentarios no revisados

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Taller de Javascript

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en Scripts en Javascript


 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 3 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
Añadir un comentario al artículo Añadir un comentario del artículo



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Taller de Javascript
Categorías
+Scripts en Javascript

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia