website stats » Reemplazar cadenas en Javascript con replace | Solo Código |

Reemplazar cadenas en Javascript con replace

Escrito por J.F. el Thursday, 10 de January del 2008 a las 18:42

Vamos con un tema sencillito de Javascript, reemplazar una misma cadena en todo el texto. No soy un avanzado experto en Javascript, por lo que de vez en cuando aprendo alguna cosilla nueva en el trabajo, y si a mí me es de utilidad pienso que a otros también les puede servir.

En ésta ocasión necesitaba reemplazar en una cadena varias veces un mismo texto. Recurrí a la función replace, pero me dí cuenta que utilizándola de la forma normal tan solo reemplaza la cadena que queremos en su primera aparición. Por tanto si queremos cambiar varias veces la palabra perro por gato en una variable, no bastaría con hacerlo de la siguiente forma:

JavaScript:
  1. cadena.replace("perro", "gato");

Para que se reemplace en todo el texto tan solo deberemos utilizar la siguiente expresión regular: .replace(/loquequeramos/g, "gato");
Por tanto finalmente resolvemos facilmente el problema de la siguiente forma:

JavaScript:
  1. cadena.replace(/perro/g, "gato");

Comentarios (14)

Categoria: Javascript

14 Comentarios

Entradas relacionadas


Comentario de Alberto

Realizado el Tuesday, 5 de February del 2008 a las 13:13

Yo tengo estos dos casos:

denom.replace(/./g,”. “);
denom.replace(/,/g,”, “);

y no me funciona en ninguno de los dos si alguien me podria ayudar se lo agradeceria mucho, probablemente este haciendo algo mal…

Comentario de IFLR

Realizado el Wednesday, 23 de July del 2008 a las 23:47

intentalo con ‘\\.’ por que en ocaciones no reconoce el punto ni la coma entre otros simbolos, eso es un detalle que me ocurrio en Java, espero que aplique para JS, espero te sirva, salu2, exitos y bye

Comentario de IFLR

Realizado el Thursday, 24 de July del 2008 a las 0:36

mira es mas tengouna funcion que te puede hacer eso, pero lo hace con numeros, es para el manejo de moneda:function sumavalor()
{
var campo1=”",campo2=”";
var x=0, total;
var cad1=”", cad2=”";
cad1=document.form1.valorcontrato.value;
cad2=document.form1.adicioncontrato.value;
alert(‘longitud valor contrato: ‘+cad1);

for (x=0; x

Comentario de IFLR

Realizado el Thursday, 24 de July del 2008 a las 0:36

for (x=0; x

Comentario de Samboga

Realizado el Monday, 1 de September del 2008 a las 4:19

Deseo reemplazar el ‘\’ por el ‘/’ pero el \ javascript no me lo reconoce y manda un error. Lo que deseo es filtrar el nombre la la imagen con su extension de la ruta:

C:\Documents and Settings\Sr.Ivan\Mis documentos\Mis imágenes\2007_06_08\Fiesta_4.jpg

Solo deseo “Fiesta_4.jpg” para almacenarla en la base de datos

¿ Como lo hago ——– auxilio por favor?

Comentario de Zeneke_log

Realizado el Thursday, 11 de September del 2008 a las 10:12

function QuitaBL(cadena)
{
while(cadena.indexOf(” “)!=-1)cadena=cadena.replace(” “,”")
return cadena
}

Comentario de outilaquiiiiii

Realizado el Monday, 8 de December del 2008 a las 20:29

outilaquiiiiii

Comentario de outilaquiiiiii

Realizado el Monday, 8 de December del 2008 a las 20:30

Haz click sobre mi nombre ;)

Comentario de erxico

Realizado el Friday, 9 de January del 2009 a las 13:11

Y si en vez de sustituir texto directamente quisiera sustituirlo en una variable? me explico
var animalPerro = ‘perro’ y var animalGato = ‘gato’
He probado con cadena.replace(/animalPerro/g, animalGato); y no ha funcionado, y quisiera hacerlo con variables, como lo podria hacer?

Comentario de dayli

Realizado el Tuesday, 10 de November del 2009 a las 22:58

deseo sustituir la cadena “2009:12:20 45:45:45.777-89:00″
por “2009:12:20 45:45:45″
no logro hacerlo

Comentario de Jose Manuel

Realizado el Thursday, 25 de March del 2010 a las 1:10

Y si en vez de sustituir texto directamente quisiera sustituirlo en una variable? me explico
var animalPerro = ‘perro’ y var animalGato = ‘gato’
He probado con cadena.replace(/animalPerro/g, animalGato); y no ha funcionado, y quisiera hacerlo con variables, como lo podria hacer?
ya trataste algo como esto?

var animalPerro = ‘/perro/g’ y var animalGato = ‘gato’
cadena.replace(animalPerro , animalGato);

Comentario de charlie

Realizado el Wednesday, 5 de May del 2010 a las 6:35

Excelente!
Me fue de bastante ayuda, rapidamente logre solucionar el problema, lo que queria era reemplazar el “%20″ que aparece en los links por el espacio.
nomape = nomape.replace(/%20/g, ” “);

Comentario de dfernand

Realizado el Wednesday, 29 de June del 2011 a las 19:59

P154 y P155.

Comentario de Angel

Realizado el Tuesday, 23 de August del 2011 a las 14:47

Gracias de mucha ayuda la informacion….

Escribir un comentario

Puedes usar las siguientes etiquetas HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Solo Código

Solo Código es una colección de códigos de todo tipo que pueden resultar útiles para el diseño de páginas web. Está enfocado tanto para aquellos que son expertos, como para aquellos principiantes que quieren encontrar recursos útiles, o no saben implementar determinadas funciones en sus webs. No olvides que Solo Código es un blog de Informática Práctica, donde tenemos otras secciones interesantes como:
| Tutoriales | Trucos | Software | Links | Buscar |