Você está aqui: C ::: Dicas & Truques ::: Strings e Caracteres |
Verificando se uma substring está contida no final de uma string (sua própria função ends_with())Quantidade de visualizações: 8117 vezes |
Em algumas situações precisamos verificar se uma string termina com uma determinada substring em C. O código abaixo mostra como isso pode ser feito. Como sugestão você pode modificar o código para que esta verificação possa também ser feita desconsiderando maiúsculas e minúsculas. Veja a listagem:----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// função personalizada que permite verificar se
// uma string termina com uma determinada substring
int ends_with(const char *str, const char *sufixo){
// vamos obter a diferença de tamanho entre as duas
// strings
int dif = strlen(str) - strlen(sufixo);
// vamos adiantar o ponteiro da string até ficarmos
// na mesma posição da substring fornecida
int i;
for(i = 0; i < dif; i++)
str++;
// agora vamos comparar o final da string com a
// substring fornecida
if(strcmp(str, sufixo) == 0) // sucesso
return 1;
else
return 0; // não termina com o sufixo fornecido
}
int main(int argc, char *argv[]){
char frase[] = "Gosto muito de C++";
// vamos verificar se frase termina com "C++"
if(ends_with(frase, "C++"))
printf("A string termina com a substring indicada");
else
printf("A string NAO termina com a substring indicada");
puts("\n\n");
system("PAUSE");
return 0;
}
|
|
|
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






