Diferencia entre revisiones de «Usuario:Juanda/javascript/ExpReg»

De WikiEducator
Saltar a: navegación, buscar
(Algunos ejemplos útiles)
Línea 56: Línea 56:
 
===Algunos ejemplos útiles===
 
===Algunos ejemplos útiles===
 
*Número de teléfono nacional, sin espacios
 
*Número de teléfono nacional, sin espacios
'''/^\d{9}$/''' <br>
+
:'''/^\d{9}$/''' <br>
'''/^[0-9]{9}$/'''<br>
+
:'''/^[0-9]{9}$/'''<br>
Comienza (^) por una cifra numérica (\d) de la que habrá 9 ocurrencias ({9}) y aquí acabará la cadena ($).
+
: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
 
*Fecha con formato dd/mm/yyyy
/^\d{2}\/\d{2}\/\d{4}$/
+
:/^\d{2}\/\d{2}\/\d{4}$/
  
 
*Código postal
 
*Código postal
'''^\d{5}$/'''
+
:'''^\d{5}$/'''
  
 
*e-mail
 
*e-mail
'''/^(.+\@.+\..+)$/'''<br>
+
:'''/^(.+\@.+\..+)$/'''<br>
Comienza (^) por caracteres cualesquiera que no sean salto de línea (.) de los que habrá al menos una ocurrencia(+).
+
:Comienza (^) por caracteres cualesquiera que no sean salto de línea (.) de los que habrá al menos una ocurrencia(+).<br>
Después el carácter arroba (\@), seguido de al menos un carácter que no podrá ser el salto de línea (.+),
+
: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
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 ($).
 
(.+), y aquí acabará la cadena ($).
 
</div>
 
</div>

Revisión de 09:08 3 oct 2012



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 ($).