bem, andei à procura na net de um códigozinho k fizesse akela função. como não encontrei nada decidi fazer eu e partilha-la com o resto do pessoal para k se altem precisar da função como eu e não a encontrar, já tem aki uma ajuda.
Se o pessoal encontrar algum problema ou kiser alterar/acrescentar algo é na boa, esta é só a solução k eu arranjei.
Aki fica:
axo k é facil perceber mas se tiver duvidas avisem.
Se o pessoal encontrar algum problema ou kiser alterar/acrescentar algo é na boa, esta é só a solução k eu arranjei.
Aki fica:
Código:
#include <string.h>
#include <stdlib.h>
unsigned char* strreplace(unsigned char* str_in, unsigned char* str_find, unsigned char* str_subst) {
unsigned char* subst_pos = strstr(str_in, str_find);
if (subst_pos == NULL)
return NULL;
unsigned char* result = calloc(strlen(str_in) - strlen(str_find) + strlen(str_subst) + 1, sizeof(unsigned char));
strncpy(result, str_in, subst_pos - str_in);
strcat(result, str_subst);
strcat(result, str_in + (subst_pos - str_in) + strlen(str_find));
return result;
}