Você está aqui: C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de uma substring em um string C++ usando a função find()Quantidade de visualizações: 645 vezes |
|
Em algumas situações nós precisamos retornar a quantidade de vezes que uma palavra (ou parte de uma palavra) é encontrada em uma frase ou texto, ou seja, as ocorrências de uma substring em uma string. Nesta dica eu mostro como isso pode ser feito usando a função find() do C++. Veja o código completo para o exemplo:
#include <string>
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// vamos declarar duas strings
string frase, palavra;
// vamos pedir para o usuário informar uma frase
cout << "Informe uma frase: ";
getline(cin, frase);
// vamos pedir para o usuário informar uma palavra
cout << "Informe uma palavra: ";
getline(cin, palavra);
int quantidade = 0;
// tentamos encontrar a primeira ocorrência
int indice = frase.find(palavra, 0);
while (indice != string::npos){
// aumentamos a quantidade de ocorrências
quantidade++;
// e pesquisamos novamente de onde paramos
indice = frase.find(palavra, indice + palavra.size());
}
// e mostramos o resultado
cout << "Foram encontradas " << quantidade << " ocorrencias da palavra " <<
palavra << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Informe uma frase: Gosto de Java, Java e mais Java Informe uma palavra: Java Foram encontradas 3 ocorrencias da palavra Java |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
Delphi - Como calcular MDC em Delphi |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




