Ver Mensaje Individual
Antiguo 25/04/2008, 14:54   #1
NH
Usuario Registrado
 
Fecha de ingreso: 29/dic/2004
Mensajes: 48
NH está en el buen camino
Red face funcion sustituir en c++

Hola,estoy intentando hacer una funcion en c++ que lo que haga es: dada una linea de un fichero.txt y una palabra introducida por teclado, quiero que si esa palabra introducida,está en esa linea de fichero,me la cambie por otra palabra tb introducida por teclado. Este es mi codigo de dicha funcion, pero solo me funciona cuando la palabra a cambiar esta al principio de la linea, si esta x el medio o el final no lo hace.

void SustituirPalabra(string &frase,string palCambio,string palNueva)
{
int i=0,j=0,k=0,l=0;
bool fin=false;
string aux="";
string parte1="";
string parte2="";

for(i=0;((i<(int)frase.length()-(int)palCambio.length() +1 )&& (fin==false));i++){
for(j=0;j<(int)palCambio.length();j++){
aux=aux+frase[i+j];
if(aux==palCambio){
for(k=0;k<i;k++){
parte1=parte1+frase[k];
}
for(l=(i+palCambio.length());l<(int)frase.length();l++){
parte2=parte2+frase[l];
}
frase=parte1+palNueva+parte2;
fin=true;
i=i+palNueva.length();
}
}
}
}

¿Alguna sugerencia? Nesito ayuda es urgente!! Gracias.
Un salu2.
NH está desconectado
Respuesta rápida a este mensaje
Responder Citando Subir
Publicidad: Conoce las ofertas de ANUNCIATE