SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: rsalg en Sábado 12 de Abril de 2003, 01:26

Título: Re: reemplazar una palabra
Publicado por: rsalg en Sábado 12 de Abril de 2003, 01:26
Hola.necesito ayuda en lo siguiente: debo reemplazar una palabra por otra dentro de una frase ya ingresada y guardada. lo he intentado con arrays pero no me funciona. ademas, si la nueva palabra es mas larga que la palabra ha reempalazar, me sobreescribe sobre las restantes palabras de la frase. Les agradeceré cualquier ayuda
Título: reemplazar una palabra
Publicado por: JuanK en Sábado 12 de Abril de 2003, 03:04
si declaras un apuntador a una cadena de char se te puede facilitar el trabajo, aunque el hecho de declarar un array no lo hace mas complicado:
 
Código: Text
  1.  
  2. char array [100], buff[100];
  3. char subcadena[10];
  4. char reempl[10];
  5.  
  6.  
  7. /*llenart el array con null*/
  8. memset(array, '', sizeof (array));
  9. memset(subcadena,'',sizeof
  10. memset(reemp,'',sizeof(reemp):
  11. gets(array);/*llenarlo con los datos
  12. indicados*/
  13. gets(subcadena;)
  14. /**/
  15.  
  16.  

1-te desplazas hasta la ultima posicion de la palabra que estas buscando y copias todo de ahi en adelante e nla variable buff.
2-desde donde encontraste el primer campo de la palabra que buscabas, insertas la palabra nueva.
3-agregas un espacio y seguidamente copias en esta posicion todo lo que guardaste en buff y listo!!!

Es sencillo, la verdad  iba a darte todo el codigo, pero no creo que eso sea una verdadera ayuda...

suerte, cualquier inquietud me cuentas y con gusto te respondo