Sistemas de Información, Páginas Web, Seguridad

Regular Expressions

Miércoles 31 de enero del 2007

¿Has tenido que reemplazar a mano algunas cosas? en un texto enorme, creo que es algo muy frustrante y asi como para ti lo es, también para los programadores, o para algun diseñador, pues es frustrante estar en dreamweaver y tener que reemplazar etiqueta por etiqueta, o encontrar dentro de todo un sitio, una simple palabra.

Regular Expressions es una herramienta que viene ya implementada en casi todos los lenguajes de programación y en muchos buscadores de programas ejemplo el de dreamweaver tiene una parte para usar regular expressions que se activa asi:

Dreamweaver

Entrando más a lo que son las regular expressions hay varios patrones, por ejemplo:

  • cuando nos referimos al . quiere decir cualquier letra, número o caracter sin tomar en cuenta los saltos de línea
  • cuando nos referimos a [a-z] es cualquier combinación de letras que este en minúscula por ejemplo HolaComoLesVa, entonces obviamente [A-Z] es cualquiera en mayúsculas, y [0-9] cualquier número, y si queremos cualquier palabra alfanumérica sería asi: [a-zA-Z0-9]
  • cuando usamos \n son saltos de línea
  • todas se agrupan entre paréntesis igual que en matemáticas

Pero todo lo anterior es simplemente para encontrar un caracter, y si quieremos una palabra necesitamos decirle cuantos caracteres necesita encontrar, por ejemplo:

  • El signo de + se refiere a que debe encontrar uno o más, o sea al menos una coincidencia, y deben estar juntos, por ejemplo en la frase “Hola a todo el Mundo Como estan”, si buscaramos [a-z]+ encontraríamos lo marcado en negritas “Hola a todo el Mundo Como estan“, nótese que los espacios no se cuentan en la busqueda y que cada palabra separada sería una búsqueda separada, o sea los resultados serían ola, a, todo, el, undo, omo, estan, en cambio si quisieramos encontrar todas las palabras usaríamos [a-zA-Z]+, lo cual nos daría como resultado cada una de las palabras, pero separadas, si también quisieramos contar los espacios, podríamos usar lo siguiente .+ lo cual encontraría toda la frase en un solo resultado.
  • El signo de * nos dice que cero o más puede encontrar la búsqueda, es igual al signo de + en la búsqueda pero cambia cuando estamos buscando que encuentre al menos uno quiere decir que si no encuentra ninguno simplemente no devolvería nada en la búsqueda al contrario del signo de * que devolvería un resultado.
  • Si usamos las llaves {2} quiere decir que encuentre solamente 2 letras y si queremos poner un límite máximo sería {2,5} que sólamente encontraría resultados que fueran entre 2 y 5 coincidencias, y si no quisieramos poner un límite superior podríamos decir {2,} que sería 2 o más, obviamente podemos poner cualquier número ahi, para que les quede mas claro en la frase “El tiburon se comio a toda la gente en esta Isla por andar en la Playa” si buscaramos [a-z]{3,5} encontraría lo siguiente: “El tiburon se comio a toda la gente en esta Isla por andar en la Playa

Para que les quede más claro pueden ver el siguiente ejemplo:

regex

Los cuadros azules indican que encontró los suficientes, los cuadros amarillos quiere decir que no pudo encontrarlos

Son muchos los ejemplos prácticos que tiene probablemente ahorita no se les ocurra uno pero cuando esten en una situación dificil podría ahorrarles mucho tiempo

Para más información y documentación entera visiten: http://www.regular-expressions.info/

Trackback URI | RSS de los comentarios

Deja un Comentario

 

Posts relacionados

  • No related posts