Jump to content

Eliminar todas substrings numa outra string


Llaverola

Recommended Posts

ola pessoal. fiz uma programa que elimina uma substring numa outra string

exemplo: STR = RICARDO COELHO, SUBSTR=COELHO; ele elimina o coelho. até aki td bem. mas agora quero eliminar TODAS  as substrings e n apenas uma..

STR= RICARDO COELHO COELHO. SUBSTR= COELHO...quero q elimine os dois COELHO e n apenas um.

o codigo a seguir elimina apenas um. preciso da vossa ajuda para fazer alguma modificação no codigo abaixo para conseguir eliminar TODAS as substrings. obrigado APENAS INSERI A FUNÇÃO. n inseri o main, se for necessario insiro. ajudem-me. obrigado

char *del_sub(char str[], char sub[])
{
    int i, j, len, len2, pos,x=0;
    char *s;
    
    

                         
     len  =  strlen(str); //tamanho da string
     s    =  strstr(str, sub); //sub dentro de str (endereço)
     pos  =  s - &str[0];  //endereço da sub na str - endereço do 1º caracter de str
     len2 =  strlen(sub); // tamanho da substring
     
     for (i=pos;i<=len-len2; i++) // tamanho inicial menos o da substring.
     
     /**tenho ricardo, quero tirar o car
     o str=7 e o substr=3. 7-3 = 4. quer 
     dizer que vão sobrar 4 caracteres na 
     string final (RIDO) por isso vai desde
     pos que é 2 até á posiçao 4 e vai eliminando*/
     
     {
         str[i]=str[i+len2];
     }
          

}
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.