Ver Mensaje Individual
  #10 (permalink)  
Antiguo 12/01/2012, 14:41
Avatar de CapacProg
CapacProg
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años, 1 mes
Puntos: 71
Respuesta: ¿Cómo sustituir un caracter de un string por otro múltiple?

En el mismo for se puede. Como ya esta muy largo y en vista que no ha podido solucionar con mucho éxito el problema le cedo este código para que realice sus pruebas.
Código C++:
Ver original
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int main(int argc, char** argv) {
  6.     string str = "Hola mundo como estas";
  7.     char c = 'a';
  8.     string reemplazo;
  9.     for (int i = 0; i < (int) str.length(); ++i) {
  10.         if (str[i] == c) {
  11.             reemplazo.assign(1, c);
  12.             reemplazo.insert(1, "o");
  13.             reemplazo.insert(2, 1, c);
  14.             str.replace(i, 1, reemplazo);
  15.             i+=2;//Aquí esta el truco para impedir que el for sea infinito
  16.         }
  17.     }
  18.     cout << str << endl;
  19.     return 0;
  20. }
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%