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

De WikiEducator
Saltar a: navegación, buscar
(Algunos ejemplos útiles)
 
(3 revisiones intermedias por el mismo usuario no mostrado)
Línea 39: Línea 39:
 
var cadena = /alumno[0-9a-zA]/; //Formaría cadenas como alumno5, alumnor o alumnoA
 
var cadena = /alumno[0-9a-zA]/; //Formaría cadenas como alumno5, alumnor o alumnoA
 
</source>
 
</source>
'''+''' indica que lo que tiene a su izquierda puede estar 1 o mas veces.<br>
+
:'''+''' indica que lo que tiene a su izquierda puede estar 1 o mas veces.<br>
'''*''' indica que puede estar 0 o mas veces<br>
+
:'''*''' indica que puede estar 0 o mas veces<br>
'''?''' indica opcionalidad, es decir, lo que tenemos a la izquierda puede aparecer 0 o 1 vez. <br>
+
:'''?''' indica opcionalidad, es decir, lo que tenemos a la izquierda puede aparecer 0 o 1 vez. <br>
'''{3}''' Indicar exactamente el número de veces que puede aparecer (3 en este caso).<br>
+
:'''{3}''' Indicar exactamente el número de veces que puede aparecer (3 en este caso).<br>
'''\d''' un dígito. Equivale a [0-9] <br>
+
:'''\d''' un dígito. Equivale a [0-9] <br>
'''\D''' cualquier caracter que no sea un dígito.<br>
+
:'''\D''' cualquier caracter que no sea un dígito.<br>
'''\w''' Cualquier carácter alfanumérico. Equivalente a [a-zA-Z0-9_].<br>
+
:'''\w''' Cualquier carácter alfanumérico. Equivalente a [a-zA-Z0-9_].<br>
'''\W''' cualquier carácter no alfanumérico <br>
+
:'''\W''' cualquier carácter no alfanumérico <br>
'''\s''' espacio<br>
+
:'''\s''' espacio<br>
'''\t''' tabulador
+
:'''\t''' tabulador
  
 
</div>
 
</div>
Línea 54: Línea 54:
  
 
<div class="slide">
 
<div class="slide">
 +
 
===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 (.+), y aquí acabará la cadena ($).
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 ($).
+
 
</div>
 
</div>
  

Última revisión de 10:16 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 ($).