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: 526 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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |