Expresiones regulares: (^ principio $ fin) de cadena |
Los dos primeros caracteres con un significado especial en una expresión regular son: ^ principio de cadena y $ fin de cadena.
Cuando queremos controlar si un string comienza con un determinado carácter o conjunto de caracteres podemos implementar una expresión regular antecediendo al o los caracteres el símbolo ^.
problemaIngresar una oración y mostrar un mensaje si la misma comienza con el carácter '-'.
Otro mensaje si comienzo con la palabra 'hora'.
<html> <head> </head> <body> <script type="text/javascript"> var oracion=prompt('Ingrese una oración',''); var patron1=/^-/; if (patron1.test(oracion)) alert('Comienza la oración con el carácter -'); else alert('No comienza la oración con el carácter -'); var patron2=/^hora/; if (patron2.test(oracion)) alert('Comienza la oración con la palabra hora'); else alert('No comienza la oración con la palabra hora'); </script> </body> </html>
La primer expresión regular la definimos con la siguiente sintaxis (luego del carácter ^ disponemos el carácter que debe ingresar primero el operador para que la expresión se valide correctamente):
var patron1=/^-/;
Luego vemos que podemos disponer un conjunto de caracteres:
var patron2=/^hora/;
Con esta expresión el operador debe ingresar los cuatro primeros caracteres iguales a los dispuestos después del carácter ^.
problemaIngresar una palabra y mostrar un mensaje si la misma finaliza con el string 'ón'
<html> <head> </head> <body> <script type="text/javascript"> var oracion=prompt('Ingrese una palabra',''); var patron=/ón$/; if (patron.test(oracion)) alert('La palabra finaliza con los caracteres \'ón\''); else alert('La palabra no finaliza con los caracteres \'ón\''); </script> </body> </html>
Cuando queremos verificar si una cadena finaliza con un determinado carácter o conjunto de caracteres debemos disponer al final el carácter $ y antecederle el o los caracteres a verificar:
En el ejemplo anterior si ingresamos las palabras 'constitución', 'camión', 'edición' luego el método test retorna verdadero. En cambio si ingresamos 'cama', 'mano' el método test retorna falso ya que dichas palabras no finalizan con el string 'ón'.