Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/03/2010, 18:06
Avatar de Payaso73
Payaso73
 
Fecha de Ingreso: abril-2009
Ubicación: Argentina
Mensajes: 309
Antigüedad: 15 años, 7 meses
Puntos: 20
Respuesta: Equivalente a Replace en C++

Mira, no manejo muy bien strings, capaz hay una forma mas facil de hacerlo, yo lo hice de esta forma y me funciono, espero te sirva, saludos.

Código C++:
Ver original
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. int main(int argc, char *argv[]) {
  7.    
  8.     string str1 = "jkn$uso$cw92$87&3";
  9.     string str2 = "$";
  10.     string str3 = "*";
  11.     int i=0;
  12.    
  13.     while(i==0){ //la variable i la puse solamente para que funcione el ciclo
  14.         string::size_type pos= str1.find (str2, 0); //find busca en str1 lo que esta en str2 y devuelve la posición
  15.         if (pos==string::npos) break; //si no encuentra lo que busca ($) entra al if y ejecuta el break y sale del ciclo
  16.         cout<<pos<<endl;
  17.         str1.replace (pos, 1, str3); //pos indica donde esta $, el 1 es para decirle a replace cuantos caracteres tiene que reemplazar y str3 es lo que tiene que pegar en su lugar
  18.         cout<<str1<<endl;
  19.     }
  20.    
  21.     return 0;
  22. }


Los cout son solo decorativos :P