Operadores: Expresiones regulares
Operadores
Aritméticos
Binarios
Lógicos
Varios
Funciones globales
Expres. regulares
 
Expresiones Regulares

Las expresiones regulares constituyen un mecanismo bastante potente para realizar manipulaciones de cadenas de texto. El proceso para el que se usan estas expresiones, presente en el mundo el UNIX y el lenguaje Perl, es el de buscar y/o substituir una subcadena de texto dentro de otra cadena. En principio esto puede hacerse usando los métodos del objeto string, pero el problema surge cuando no tenemos una subcadena fija y concreta sino que queremos buscar un texto que responda a un cierto esquema, como por ejemplo: buscar aquellas palabras que comienzan con http: y finalizan con una \, o buscar palabras que contengan una serie de números consecutivos, etc.; es en estos casos cuando tenemos que utilizar las expresiones regulares.
La subcadena que buscamos en el texto es lo que se llama un patrón y se construye encerrando entre dos barras inclinadas ( / ) una serie de caracteres normales y símbolos especiales llamados comodines o metacaracteres, (algo parecido a buscar archivos con nombre *.bat cuando queremos encontrar los ficheros con extensión bat). Este patrón es una descripción del texto que se está buscando y JavaScript encontrará las subcadenas que concuerdan con ese patrón o definición. Las expresiones regulares se usan con el objeto Regular Expresion y también dentro de los métodos String.match, String.replace, String.search y String.split.

En la tabla que sigue se muestran los caracteres comodín usados para crear los patrones y su significado, junto a un pequeño ejmplo de su utilización.

Significado Ejemplo Resultado
\ Marca de carácter especial /\$ftp/ Busca la palabra $ftp
^ Comienzo de una línea /^-/ Líneas que comienzan por -
$ Final de una línea /s$/ Líneas que terminan por s
. Cualquier carácter (menos salto de línea) /\b.\b/ Palabras de una sóla letra
| Indica opciones /(L|l|f|)ocal/ Busca Local, local, focal
( ) Agrupar caracteres /(vocal)/   Busca vocal
[ ] Conjunto de caracteres opcionales /escrib[aoe]/ Vale escriba, escribo, escribe

La tabla que sigue describe los modificadores que pueden usarse con los caracteres que forman el patrón. Cada modificador actúa sobre el carácter o el paréntesis inmediatamente anterior.

Descripción Ejemplo Resultado
* Repetir 0 o más veces /l*234/ Valen 234, 1234, 11234...
+ Repetir 1 o más veces /a*mar/ Valen amar, aamar, aaamar...
? 1 o 0 veces /a?mar/ Valen amar, mar.
{n} Exactamente n veces /p{2}sado/ Vale ppsado
{n,} Al menos n veces /(m){2}ala/ Vale mmala, mmmala....
{m,n} entre m y n veces /tal{1,3}a/ Vale tala, talla, tallla

Los siguientes son caracteres especiales o metacaracteres para indicar caracteres de texto no imprimibles, como puedan ser el fín de línea o un tabulador, o grupos predefinidos de caracteres (alfabéticos, numéricos, etc...)

Significado Ejemplos Resultado
\b Principio o final de palabra /\bver\b/ Encuentra ver en "ver de", pero no en "verde"
\B Frontera entre no-palabras /\Bver\B/ Empareja  ver con "Valverde" pero no con "verde"
\d Un dígito /[A-Z]\d/ No falla en "A4"
\D Alfabético (no dígito) /[A-Z]\D/ Fallaría en "A4"
\O Carácter nulo
\t Caracter ASCII 9 (tabulador)
\f Salto de página
\n Salto de línea
\w Cualquier alfanumérico,
[a-zA-Z0-9_ ]
/\w+/ Encuentra frase en "frase.", pero no el . (punto).
\W Opuesto a \w
([^a-zA-Z0-9_ ])
/\W/ Hallaría sólo el punto (.)
\s Carácter tipo espacio (como tab) /\sSi\s/ Encuentra Si en "Digo Si ", pero no en "Digo Sientate"
\S Opuesto a \s
\cX Carácter de control X \c9 El tabulador
\oNN Carácter octal NN
\xhh El hexadecimal hh /\x41/ Encuentra la A (ASCII Hex41) en "letra A"

     
Envía esta página a un amigo. Te lo agradecerá.   Poner esta página como página de inicio