feed twitter facebook LinkedIn facebook

JavaScript » Función Replace en JavaScript

agosto 7, 2007 por Víctor Cuervo 62 Comentarios Imprimir Imprimir

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:

  1. Cadena.replace(CadenaABuscar,NuevaCadena)

Así, podríamos realizar la siguiente sustitución:

  1. var frase = "Son tres mil trescientos treinta y tres con nueve";
  2. frase = frase.replace("tres","dos");
  3. 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:

  1. var frase = "Son tres mil trescientos treinta y tres con nueve";
  2. frase3 = frase.replace(/[aiou]/gi,'e');
  3. 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:

  1. var frase = "Son tres mil trescientos treinta y tres con nueve";
  2. frase4 = frase.replace(/dos/gi,'nueve');
  3. 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.

Descargar el Codigo
Descargar el código
Error en el Codigo
Error en el código
Foro sobre JavaScript
Foro sobre JavaScript
tags: ,

Artículos relacionados:

62 comentarios »

RSS feed para los comentarios de esta entrada. TrackBack URI

1 2 3 6
  1. Pollo
    septiembre 26, 2007 #

    Buenas,

    Interesante el artículo, aunque comentar que javascript si provee de un método para hacer reemplazo de cadenas.

    mivariable = mireemplazo.replace(/esto/gi, “poresto”);

    Saludos,

  2. Ivan
    noviembre 8, 2007 #

    Pollo. El replace de javascript solo reemplaza la primer coincidencia, las demas las deja como estaba.
    Me parece buenisima esta solucion
    saludos

  3. Nare
    noviembre 12, 2007 #

    Ivan, el /gi en replace le ordena que busque Globalmente e Insensitvo.

    /esto/ es para que reemplace la primera aparición de “esto” case sensitive

    /esto/g es para que reemplace la primera aparición de “esto” globalmente

    /esto/i es para que reemplace la primera aparición de “esto” case INsensitive

    /esto/gi es para que reemplace la primera aparición de “esto” globalmente y case INsensitive

  4. Anxo
    noviembre 23, 2007 #

    Cuanto inutil! ivan por aclarar dudas!

  5. Anxo
    noviembre 23, 2007 #

    gracias ivan por aclarar dudas!

  6. José Luis
    diciembre 1, 2007 #

    A mi si me sirvio mucho el articulo, saludos

  7. jose antonio
    diciembre 19, 2007 #

    Alguíen podría mandarme un ejemplo con una hoja de html, porque soy algo nuevo y no llego a tanta explicación. mi correo antonysanchezmartin@hotmail.com

  8. jose antonio
    diciembre 19, 2007 #

    Perdón por el mensaje anterior, he visto el código al descargarlo en el correspondiente link, pero lo que busco es que mediante una función javascript introducida en todos los archivos html de mi web, pueda cambiar de golpe una cadena de texto, pero no estilo formulario como en el ejemplo sino un simple texto que figure en la web, como por ejemplo un nombre de empresa en el bajo de cada página.

  9. Ruben
    febrero 8, 2008 #

    function replace(texto,s1,s2){
    return texto.split(s1).join(s2);
    }
    texto = “abcdb”
    s1= b
    s2 = ;
    a(0) = a
    a(1) = cd
    join
    result -> a;cd
    si texto termina en s1 no lo hace bien

  10. alex
    febrero 14, 2008 #

    Nare tiene toda la razon, el si sabe, no como todos ustedes pinches cerrados de la puta mente

1 2 3 6

Deja un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*