Las expresiones regulares son patrones de búsqueda, que se pueden utilizar para encontrar txto que coincida con el patrón especificado.
ejemplo de busqueda sin utilizar expresiones regulares:
var texto = "la linea de alta velocidad llegará pronto a toda España,";
var subcadena = "velocidad";
var i = texto.indexOf(subcadena); // devuelve 17, índice de donde se encuentra la subcadena.
if (i != -1) // correcto, se ha encontrado la subcadena.
Este código funciona porque esta buscando cadenas que cumplen un patrón en lugar de una cadena exacta. ¿Pero qué pasaría si hiciéramos una búsqueda más general? Por ejemplo si quisiéramos buscar la cadena "car" en textos como "cartón", "bicarbonato", "practicar", ...?
Cuando se búsque cadenas que cumplen un patrón en lugar de una cadena exacta, necesitaremos usar expresiones regulares. Podrías intentar hacerlo con funciones de string, pero al final, es mucho más sencillo hacerlo con expresiones regulares, aunque la sintaxis de las mismas es un poco extraña y no necesariamente muy amigable.
En javascript las expresiones regulares se gestionan a través del objeto regExp.
Crear un literal del tipo regExp:
var expresion = /expresion regular/;
La expresión regular está contenida entre "/", y no lleva comillas. Las comillas sólo se pondrán en la expresión regular, cuando formen parte del patrón en si mismo.
Las expresiones regulares están hechas de caracteres, solos o en combinación con caracteres especiales, que se proporcionarán para búsquedas más complejas. Por ejemplo, lo siguiente es una expresión regular que realiza una búsqueda que contenga las palabras Aloe vera, en ese orden y separadas por uno o más espacios en medio:
var expresion = /Aloe\s+Vera/;
Los caracteres especiales en este ejemplo son, la barra invertida (\), que tiene dos efectos:
Se utiliza para indicar que se trata de un carácter especial, o se usa con carácter especial, tales como el signo más (+), para indicar que el carácter debe ser tratado literalmente. En este caso, la barra invertida se utiliza con "s", que tranforma la letra s en un carácter especial indicando un espacio en blanco, un tabulador, un slto de línea, etc. el símbolo + indica que el carácter anterior puede aparecer una o más veces.
No hay comentarios:
Publicar un comentario