Curso de JavaScript

De WikiEducator
Saltar a: navegación, buscar



Expresiones Regulares

Definición de expresiones regulares

  • Las expresiones regulares son una forma de describir cadenas de caracteres que sirven para comparaciones y reemplazos complejos.
  • Están basadas en las expresiones regulares de Perl y se representan por el objeto RegExp (REGular EXPresion).
var patron = /pato/;
var patron = new RegExp(“pato”);

Presenta tres métodos: test(), exec() y compile():

var patt1=new RegExp("e");
document.write(patt1.exec("The best things in life are free"));  		
//como hay una “e” en la cadena, la salida de la sentencia será 'e'.
 
var patt1=new RegExp("e");
document.write(patt1.test("The best things in life are free"));  		
//como hay una “e” en la cadena, la salida de la sentencia será true
  • Tiene varias propiedades: ignoreCase, lastMatch...
  • Múltiples modificadores:
^ Indicar coincidencia al principio de la cadena
$ Indicar coincidencia al final de la cadena.
var cadena = /alumn[ao]/; //buscaría tanto alumno como alumna
var cadena = /alumno[0-9]/; //bucaría alumno0, alumno1, … hasta alumno9
var cadena = /alumno[0-9a-zA]/; //Formaría cadenas como alumno5, alumnor o alumnoA
+ indica que lo que tiene a su izquierda puede estar 1 o mas veces.
* indica que puede estar 0 o mas veces
? indica opcionalidad, es decir, lo que tenemos a la izquierda puede aparecer 0 o 1 vez.
{3} Indicar exactamente el número de veces que puede aparecer (3 en este caso).
\d un dígito. Equivale a [0-9]
\D cualquier caracter que no sea un dígito.
\w Cualquier carácter alfanumérico. Equivalente a [a-zA-Z0-9_].
\W cualquier carácter no alfanumérico
\s espacio
\t tabulador


Algunos ejemplos útiles

  • Número de teléfono nacional, sin espacios
/^\d{9}$/
/^[0-9]{9}$/
Comienza (^) por una cifra numérica (\d) de la que habrá 9 ocurrencias ({9}) y aquí acabará la cadena ($).
  • Fecha con formato dd/mm/yyyy
/^\d{2}\/\d{2}\/\d{4}$/
  • Código postal
/^\d{5}$/
  • e-mail
/^(.+\@.+\..+)$/
Comienza (^) por caracteres cualesquiera que no sean salto de línea (.) de los que habrá al menos una ocurrencia(+).
Después el carácter arroba (\@), seguido de al menos un carácter que no podrá ser el salto de línea (.+), después viene el carácter punto (\.), seguido de al menos un carácter donde ninguno podrá ser el salto de línea (.+), y aquí acabará la cadena ($).