Hoy os traemos un pequeño trozo de código Javascript que espero os sea útil en alguna ocasión y que reemplaza una cadena por otra todas las veces que sea encontrada.
Para reemplazar una subcadena por otra podemos usar la función replace que hace precisamente eso:
|
1 |
"Aun me quedan 12 coches y 12 motos".replace('12','1'); |
El código anterior produciría una salida tal que así:
"Aun me quedan 1 coches y 12 motos"
Aquí es donde vemos el problema, replace solo reemplaza la primera ocurrencia y posiblemente nosotros necesitemos que cambie todas las ocurrencias de la cadena a reemplazar.
Para ello usaremos la siguiente expresion regular /12/g. El modificador g nos permite reemplazar todas las ocurrencias encontradas.
|
1 |
"Aun me quedan 12 coches y 12 motos".replace(/12/g,'1'); |
Ahora sí obtenemos el resultado buscado. ¿Como lo hacemos para que sea un código reutilizable?
|
1 2 3 4 5 6 |
String.prototype.str_replace = function (buscar, reemplazar){
return this.replace(new RegExp(buscar,'g'),reemplazar);
};
//Para usarlo
"Aun me quedan 12 coches y 12 motos".str_replace('12','1'); |
Espero que os sirva de utilidad en algún momento.

Comentarios recientes