Devuelve una copia de una cadena con texto reemplazado utilizando una expresión regular o una cadena de búsqueda.
objetoString.replace(rgExp, textoReemplazo)
El resultado del método replace es una copia de objetoString después de hacer todos los reemplazos especificados.
Se puede utilizar cualquiera de las siguientes variables de coincidencia para identificar la coincidencia más reciente y la cadena de la que viene. Las variables de coincidencia se pueden utilizar en texto de reemplazo donde la cadena de reemplazo se tenga que determinar dinámicamente.
Caracteres | Significado |
---|---|
$$ | $ (JScript 5.5 o posterior) |
$& | Especifica la porción de objetoString que coincidió con el patrón completo. (JScript 5.5 o posterior) |
$` | Especifica la porción de objetoString que precede a la coincidencia descrita por $&. (JScript 5.5 o posterior) |
$' | Especifica la porción de objetoString que sigue a la coincidencia descrita por $&. (JScript 5.5 o posterior) |
$n | La subcoincidencia enésima, donde n en un número de un dígito entre 1 y 9. (JScript 5.5 o posterior) |
$nn | La subcoincidencia enésima, donde nn en un número de dos dígitos entre 01 y 99. (JScript 5.5 o posterior) |
Si textoReemplazo es una función, se llama a la función para cada subcadena encontrada con los siguientes m + 3 argumentos, donde m es el número del paréntesis de la izquierda en la expresión rgExp. El primer argumento es la subcadena que coincidió. Los siguientes m argumentos son todas las capturas resultantes de la búsqueda. El argumento m + 2 es el desplazamiento dentro del objetoString donde se encontró la coincidencia, y el argumento m + 3 es objetoString. El resultado es el valor de la cadena que resultó de reemplazar cada coincidencia con el valor devuelto por la función llamada.
El método replace actualiza las propiedades del objeto global RegExp.
El siguiente ejemplo muestra el uso del método replace para reemplazar la primera instancia de la palabra "El" con la palabra "Un".
function EjemploDeReplace() var r, re; //Declaración de variables. var ss = "El hombre golpeó la bola con el bate\n"; ss += "mientras el jugador detuvo la bola con el guante."; re = /El/g; //Crea patrón de expresión regular. r =ss.replace(
re,
"Un")
; //Reemplaza "El" con "Un". return(r); //Devuelve la cadena después del reemplazo. }
Además, el método replace también puede reemplazar subexpresiones en el patrón. El ejemplo siguiente intercambia cada par de palabras en la cadena.
function EjemploDeReplace() var r, re; //Declaración de variables. var src = "la lluvia en Sevilla es una maravilla."; re = /(\S+)(\s+)(\S+)/g; //Crea patrón de expresión regular. r =ss.replace(
re,
"$3$2$1")
; //Intercambia cada par de palabras return(s); //Devuelve la cadena resultante. }
El siguiente ejemplo, que funciona en JScript 5.5 o posterior, realiza la conversión de grados Fahrenheit a Celsius, y muestra el uso de una función como textoReemplazo. Para ver cómo funciona esta función, pase una cadena que contenga un número seguido inmediatamente de "F" (ejemplo, "El agua hierve a 212F").
function FaC(s) {
var test = /(\d+(\.\d*)?)F\b/g; //Inicializa patrón.
return(s.replace
(test,
function($0,$1,$2) {
return((($1-32) * 5/9) + "C");
}
)
);
}
document.write(FaC("El agua hierve a 212F y se congela a 32F."));
Método exec | Método match | Objeto RegExp | Método search | Métodos del objeto String | Método test
Se aplica a: Objeto String
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |