La función replace de JavaScript nos permite realizar sustituciones dentro de cadenas de texto de grupos de caracteres. La sintaxis de la función replace en JavaScript es la siguiente:
Cadena.replace(CadenaABuscar,NuevaCadena)
Así, podríamos realizar la siguiente sustitución:
var frase = "Son tres mil trescientos treinta y tres con nueve";
frase = frase.replace("tres","dos");
alert(frase);
En este caso, la primera coincidencia se sustituye dentro de la cadena. Es decir, la frase «Son tres mil trescientos treinta y tres con nueve» quedaría como «Son dos mil trescientos treinta y tres con nueve».
Para poder realizar sustituciones más complejas hay que indicar que la función replace en JavaScript admite que el parámetro CadenaABuscar sea una expresión regular.
De esta forma podríamos tener la siguiente sustitución:
var frase = "Son tres mil trescientos treinta y tres con nueve";
frase3 = frase.replace(/[aiou]/gi,'e');
alert(frase3);
Lo que estamos diciendo con la expresión regular es que cualquier carácter del conjunto a, i, o y u, sea sustituido por el carácter ‘e’. Nos devolvería «Sen tres mel tresceentes treente y tres cen neeve»
Además, detrás de la expresión regular estamos utilizando un modificador. En este caso gi. Esto significa que la búsqueda es global, es decir, busca todas las coincidencias que puedan existir a lo largo de toda la cadena (modificador g) y que no es sensible a mayúsculas (modificador i).
Por lo tanto, si volvamos a nuestro primer ejemplo y lo que queremos es que se sustituyan todos los ‘tres’ por ‘dos’, deberíamos de utilizar el siguiente código:
var frase = "Son tres mil trescientos treinta y tres con nueve";
frase4 = frase.replace(/dos/gi,'nueve');
alert(frase4);
Espero que el ejemplo sea de utilidad…
El anterior contenido de este post se ha desplazado a Implementarnos la función replace de JavaScript Puedes ver la Desambiguación sobre la función replace de JavaScript.