Geek the Planet


Desarrollo no image

Published on Octubre 23rd, 2010 | by Angelfire

4

10 expresiones regulares fundamentales

Buscando una expresión regular para hacer una validación me encontré con esta interesante lista de 10 expresiones regulares fundamentales…

Para todos los programadores estas dichosas expresiones son un arma potensisima, demasiado potente diría yo, son algo así como un patrón, son expresiones que describen un conjunto de cadenas sin enumerar sus elementos. En el área de la programación las expresiones regulares son un método por medio del cual se pueden realizar búsquedas dentro de cadenas de caracteres. Sin importar si la búsqueda requerida es de dos caracteres en una cadena de 10 o si es necesario encontrar todas las apariciones de un patrón definido de caracteres en un archivo de millones de caracteres.

Por ejemplo, el grupo formado por las cadenas Handel, Händel y Haendel se describe mediante el patrón “H(a|ä|ae)ndel”.

El siguiente listado de expresiones regulares permiten por ejemplo validar diferentes campos dentro de un formulario: un e-mail, una URL, lo seguro de una contraseña, un número de teléfono, entre otros…

  1. Validar una URL:
    /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \?=.-]*)*\/?$/
  2. Validar un e-mail:
    ^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$
  3. Verificar la seguridad de una contraseña:
    (?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$

    De esta forma comprobaremos:

    • Contraseñas que contengan al menos una letra mayúscula.
    • Contraseñas que contengan al menos una letra minúscula.
    • Contraseñas que contengan al menos un número o caracter especial.
    • Contraseñas cuya longitud sea como mínimo 8 caracteres.
    • Contraseñas cuya longitud máxima no debe ser arbitrariamente limitada.
  4. Validar un número de teléfono:
    ^\+?\d{1,3}?[- .]?\(?(?:\d{2,3})\)?[- .]?\d\d\d[- .]?\d\d\d\d$
  5. Validar número de tarjeta de crédito:
    ^((67\d{2})|(4\d{3})|(5[1-5]\d{2})|(6011))(-?\s?\d{4}){3}|(3[4,7])\ d{2}-?\s?\d{6}-?\s?\d{5}$
  6. Obtener el ID de un video de Youtube:
    /http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*/gi
  7. Validar todas las etiquetas de imagen sin cerrar:
    ]+)(\s*[^\/])>
  8. Validar una dirección IP:
    /^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/
  9. Validar código postal:
    ^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$
  10. Validar un nombre de usuario:
    /^[a-z\d_]{4,15}$/i

Visto en: Web.ontuts

Tags: , ,


About the Author

Systems Engineering, Computer Systems Specialist, Social Engineering Specialist. Social Media Analyzer. Usability and SEO enthusiasm (Este es mi perfil de Twitter...)



4 Responses to 10 expresiones regulares fundamentales

  1. jasson says:

    Una pregunta donde se puede agregar dichas expresiones?(en k parte)

  2. annykita says:

    Creo que estas expresiones y otras, son heramientas que todo programador debe tener a la mano, son muchos los “problemas” o situaciones que puede resolver una expresión regular. Detrás de esto hay toda una teoría aplicada y mucho que aprender.

    Nice post!

  3. Angelfire says:

    @annykita: Para los programadores son un “arma” esencial. Aunque también son muy usadas en linux, aunque por lo regular con el mismo fin, buscar texto, reemplazarlo, etc.

  4. annykita says:

    @Angelfire: es igual un lenguaje formal adaptado por muchos otros lenguajes y plataformas.

Back to Top ↑
  • Comentarios recientes

  • Miniposts

    • iOS 8 disponible para descargar

      Hoy se anunció de manera oficial iOS 8, la fecha de llegada será el próximo 17 de septiembre. En iPhonehacks han recopilado los enlaces de descarga directo para los diferentes dispositivos que soportan la nueva versión del sistema operativo. Así que para quienes no desean esperar, ya pueden acceder a la versión Golden Master ...

    • Festigame Colombia 2014

      El festival de videojuegos, cultura gamer y entretenimiento familiar más grande de América Latina ha llegado a nuestro país. Festigame que es un evento creado en Chile en 2012, se ha convertido en el evento anual donde las marcas más importantes de la industria presentan sus últimos productos en el ...

    • Peter Griffin también tiene cuenta en Instagram

      El protagonista de la serie de humor, Padre de Familia, Peter Griffin ha inaugurado su presencia en la red social de fotografía con divertidas fotografías de su vida, y a pesar de ser un personaje de ficción ya ha superado los 200.000 seguidores en tan sólo dos semanas. Son unas fotos bastante divertidas, las ...

    • Manual y documentación de Node.js para Android

      Node.js se ha venido haciendo bastante popular en los últimos años, cada vez son más los usos que como desarrolladores web le damos a esta tecnología. La siguiente aplicación es el manual y la documentación de Node.js, que contiene los siguientes temas: About these Docs Synopsis Assertion Testing Buffer C/C++ Addons Child Processes Cluster Console Crypto Debugger DNS Domain Events File System Globals HTTP HTTPS Modules Net OS Path Process Punycode Query Strings Readline REPL Stream String Decoder Timers TLS/SSL TTY UDP/Datagram URL Utilities VM ZLIB

    • Star Wars Traceroute

      ¿Qué pasa cuando un ingeniero está muy desocupado? pues pasan cosas como esta: Mac y Linux Van a la consola y escriben: traceroute 216.81.59.173 Windows Buscan el CMD y escriben: tracert 216.81.59.173 El resultado es interesante y sorprendente. Si quieren ver la salida de la ejecución del comando, pueden ver el gist Ver más: Beagle Network

  • Comunicados - Notas de Prensa