You are on page 1of 3

Expresiones regulares en JavaScript

In JavaScript on 09/12/2011 by Esteban Olate Etiquetado: Expresiones Regulares, JavaScript

Las expresiones regulares son un mecanismo bastante potente con el cual se pueden
manipular cadenas de caracteres, se pueden realizar búsquedas por patrón y reemplazos
de cadena, consiste en establecer un patrón (Ejemplo: solo letras, solo números, palabra
en específica, etc…) el cual luego se podrá utilizar ya sea para reemplazar una cadena o
buscar el patrón dentro de la misma. Las expresiones regulares en JavaScript se basan en
las de Perl, por lo que son muy parecidas. JavaScript provee dos formas de crear una
expresión regular, a través de un objeto, el objeto RegExp, y a través de una sintaxis
especialmente pensada para ello (Crear un String con el siguiente formato: “/<patrón>/”.).
A continuación una lista de los caracteres, los más usados, que pueden constituir una
expresión regular en JavaScript:

Comodines Significado Ejemplo
Marca de
\ carácter /\.com/; Busca la cadena “.com”.
especial
Comienzo de
^ /^a/; Cadenas que comienzan con ‘a’.
una línea
Final de una
$ /a$/; Cadenas que terminen con ‘a’.
línea
Cualquier
carácter
. /^….$/; Cadenas de 4 caracteres.
(menos salto
de línea)
Indica
| /^a|^1/; Cadenas que comiencen con ‘a’ o con ‘1’.
opciones
Agrupar
() /(abc123)/; Busca la cadena ‘abc123’;
caracteres
Conjunto de
[] caracteres /[a-z]/; Busca una letra de la ‘a’ a la ‘z’.
opcionales.
Modificadores Significado Ejemplo
Repetir 0 o
* /1*234/; Buscaría: “234”,”1234″,”11234″,etc.
más veces
Repetir 1 o
+ /1+234/; Buscaría: “1234”,”11234″,”111234″,etc.
más veces
? 1 o 0 veces /h?ola/; Buscaría: “hola”,”ola”.
Exactamente
{n} /1{2}234/; Buscaría: “11234”;
n veces
Al menos n
{n,} /1{2,}234/; Buscaría: “11234”,”111234″,”1111234″,etc.
veces
Entre n y m
{n,m} /1{2,3}234/; Buscaría: “11234”,”111234″.
veces
Especiales Significado Ejemplo
\d Un dígito. /\d/; Busca un dígito del ‘0’ al ‘9’.
\D Alfabético. /\D/; Busca cualquier caracter que no sea un número.
Cualquier
\w /\w/; Busca un caracter alfanumérico incluyendo el ‘_’.
alfanumérico,

equivalente a [a-zA-Z0-9_ ] \W Opuesto a \w /\W/. espacio \S Opuesto a \s /12\S34/. Ejemplo: Incluye el “Ho la”. Ejemplo de uso: * la cadena ” hola ” al usar la función trim(” hola “). return cadena. Flags Significado Modo de uso Explora la g cadena completa No distinguir entre i mayúsculas y minúsculas Las Flags se utilizan al final del patrón después de cerrarlo con ‘/’. else return false. * resultaría “hola”.etc…”/[a-z]*/ix”. */ function validaSoloNumerico(cadena){ var patron = /^\d*$/. * Ejemplo de uso: * Al usar validaSoloNumerico(“1234”) : retorna True. “”).’ Ignora los x espacios en el patrón Ahora aquí les dejo unas expresiones regulares y la forma de validar y reemplazar cadenas con JavaScript: /* Funcion que reemplaza (borra) los espacios en blanco del inicio * y final de una cadena. “HO LA”.etc… salto de linea s en el comodín ‘. Permite usar Ejemplo: m varios ^ y $ “Hola”. * Ejemplo de uso: * Al usar validaSoloTexto(“abcd”) : retorna True. Buscaría “12 34”. Carácter tipo \s /12\s34/. Buscaría una letra mayúscula o minúscula. */ function trim(cadena){ var expresionRegular = /^\s+|\s+$/g.”HOLA”. Ejemplos de uso:”/[a-z]/i”. Buscaría “1234”. * Al usar validaSoloTexto(“1abc”) : retorna False. } /* Función que valida si la cadena contiene solo números. if(!cadena. Busca cualquier caracter que no sea alfanumérico ni ‘_’. */ function validaSoloTexto(cadena){ . } /* Función que valida si la cadena contiene solo números.”hola”.search(patron)) return true.replace(expresionRegular. * Al usar validaSoloNumerico(“a123”) : retorna False. “ho la”. Buscaría letras mayúsculas en el patrón o minúsculas ignorando los espacios en la cadena.

* Al usar validaCorreoElectronico(“aa@aa”) : retorna False._-]*)@{1}([a-z1-9\. else return false.cl”) : retorna True.3})$/.cl”) : retorna False.cl”) : retorna False.search(patron)) return true. * Ejemplo de uso: * Al usar validaCorreoElectronico(“aa@aa.([a- z]{2. } . // En caso de querer validar cadenas con espacios usar: /^[a-zA- Z\s]*$/ if(!cadena. * Al usar validaCorreoElectronico(“aa@@aa. * Al usar validaCorreoElectronico(“aa@. var patron = /^[a-zA-Z]*$/. * Al usar validaCorreoElectronico(“aa@cl”) : retorna False. else return false.]{2.})\. } /* Función que valida si el correo es tiene un formato valido. if(!correoElectronico. * etc… */ function validaCorreoElectronico(correoElectronico){ var patron = /^([a-z]+[a-z1-9.search(patron)) return true. * Al usar validaCorreoElectronico(“@aa.cl”) : retorna False.