JScript  

Método replace

Devuelve una copia de una cadena con texto reemplazado utilizando una expresión regular o una cadena de búsqueda.

objetoString.replace(rgExp, textoReemplazo)

Argumentos

objetoString
Requerido. El objeto String o literal en el que se realiza el reemplazo. Esta cadena no se modifica con el método replace.
rgExp
Requerido. Una instancia de un objeto Regular Expression que contiene el patrón de la expresión regular y los indicadores aplicables. También puede ser un objeto String o literal. Si rgExp no es una instancia de un objeto Regular Expression, se convertirá en una cadena, y se realizará una búsqueda exacta para los resultados; no se intentará convertir la cadena en una expresión regular.
textoReemplazo
Requerido. Un objeto String o literal que contiene el texto que va a reemplazar por cada coincidencia de rgExp en objetoString. En JScript 5.5 o posterior, el argumento textoReemplazo también puede ser una función que devuelva el texto de reemplazo.

Comentarios

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.

Ejemplo

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."));

Requisitos

Versión 1

Consulte también

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.