Найти сколько раз слово встречается в тексте c++

Рейтинг: 0Ответов: 0Опубликовано: 09.03.2023

Написал код на C++ для подсчета сколько раз слово встречается в тексте. Но программа считает все варианты, даже если это слово входит в состав другого слова. Пример: Текст: la lan hla la, jsla. Программа выведет 5, хотя само слово встречается только 2 раза. Как доработать код:

#include <iostream>
#include <string>

using namespace std;

int main()
{
setlocale(LC_ALL, "Russian");
string text;
string word;
int count = 0;

cout « "Введите текст: ";
getline(cin, text);

cout « "Введите слово для поиска: ";
cin » word;

for (int i = 0; i < text.length(); i++)
    text[i] = tolower(text[i]);

// проверка преобразования в нижний регистр cout « text « endl;
for (int i = 0; i < text.length(); i++){
    if (text.substr(i, word.length()) == word){
        count++;
    }
}

cout « "Cлово " « word « " встречается в тексте " « count « " раз." « endl;

return 0;
}

Ответы

Ответов пока нет.