El constructor y otros métodos

El constructor RegExp crea un objeto expresión regular para casar texto con un patrón.

Se acepta tanto notación literal como de constructor:

/pattern/flags; 
new RegExp(pattern [, flags]);

La notación literal proporciona compilación de la expresión regular cuando la expresión es evaluada.

Usar la notación literal cuando la expresión regular permanecerá constante.

Por ejemplo, si usas la expresión regular para construir una expresión regular utilizada en un bucle, la expresión regular no será recompilada en cada iteración.

El constructor del objeto expresión regular, proporciona una compilación en tiempo de ejecución de la expresión regular. Por ejemplo:

new RegExp("ab+c")

Usa la función del constructor cuando sepas que el patrón de la expresión regular va a cambiar o no conoces el patrón y lo obtienes desde otra fuente, como por ejemplo, del usuario.

Al usar la función del constructor, las normas normales para escapar strings (preceder los caracteres especiales con \ cuando se incluyan en un string) son necesaria. Por ejemplo, las siguientes formas son equivalentes:

var re = /\w+/;
var re = new RegExp("\\w+");

Método: exec

El método exec() ejecuta una búsqueda de un match en un string determinado. Devuelve un array resultado o null.

Si estás ejecutando un match simplemente para descubrir si es verdadero o falso, utiliza el método RegExp.prototype.test() o el método String.prototype.search().

str.search(regexp)

Si tiene éxito, devuelve el índice de la expresión regular dentro del string. Si no, devuelve -1.

Cuando quieres saber si un patrón se encuentra en un string usa search (similar al método test); para más información pero una ejecución más lenta, usa match (similar al método exec).

Método: match

El método match() devuelve los matches al casar un string con una expresión regular.

Si la expresión regular no incluye la opción g, str.match() devuelve el mismo resultado que RegExp.exec(). El array devuelto tiene una propiedad extra de input, que contiene el string original que fue parseado. Además, tiene una propiedad índice, que representa el índice en 0 del match en el string.

Si incluye la opción g, el método devuelve un array que contiene todos los substrings casados en lugar de objetos casados. Los grupos capturados no son devueltos. Si no casa con nada, devuelve null.

Método: replace

El método replace() devuelve un nuevo string con algunos o todos los matches de un patrón reemplazados.

El patrón puede ser un string o una RegExp, y el reemplazamiento puede ser un string o una función que se llame para cada match.

> re = /apples/gi
/apples/gi
> str = "Apples are round, and apples are juicy."
'Apples are round, and apples are juicy.'
> newstr = str.replace(re, "oranges")
'oranges are round, and oranges are juicy.'

El string que reemplaza puede ser una función que se invoca para crear un nuevo substring (que sustituya al substring recibido del parámetro #1).

results matching ""

    No results matching ""