Я пытаюсь подсчитать вхождения определенных слов из текстового файла, проблема в том, что когда мой код читает файл - он читает его с разделителями пробела, но некоторые из слов i хотите посчитать «слова из двух слов», например «out from»C++ count function words occurance
Кроме того, есть вторая проблема, и это слова типа «нет» и «не делают» - мой код, кажется, игнорирует эти слова, даже когда я помещаю их в обратную косую черту на карте, - я предполагаю, что он проигнорирован в процессе чтения из файла по какой-то причине
Конечный результат, который я ищу, - это частота слова, которые я ищу.
std::list<std::string> Fwords = {
"a","abroad","as far as","ahead of"};
// Begin reading from file:
std::ifstream fileStream(fileName);
// Check if we've opened the file (as we should have).
if (fileStream.is_open())
while (fileStream.good())
{
// Store the next word in the file in a local variable.
std::string word;
fileStream >> word;
std::cout << "This is the word: " << word << endl;
if (std::find(std::begin(Fwords), std::end(Fwords), word) != std::end(Fwords))
wordsCount[word]++;
}
вход:
"ahead of me as far as abroad me"
это будет ожидаемый результат:
abroad:1
ahead of:1
as far as:1
Значит, вы говорите, что «насколько» следует рассматривать как одно слово? – Arunmu
Можете ли вы сделать [mcve]? Нам не нужно видеть все слова, которые вы хотите подсчитать – user463035818
@LogicStuff, он может, это просто не-op. – GreatAndPowerfulOz