2016-05-31 2 views
-1

Эй, ребята, у меня есть следующая проблема. Я использую C++ для очистки веб-сайта, чтобы найти 5 наиболее часто встречающихся слов в outputHTML, который является строкой. В настоящее время у меня есть следующий код. Любой намек был бы потрясающим.Способ получения частоты слов из строки?

curl = curl_easy_init(); 
if(curl) { 
    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com"); 
    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); 
    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &htmlOutput); 
    res = curl_easy_perform(curl); 
    curl_easy_cleanup(curl); 

    std::cout << htmlOutput << std::endl; 
} 
+4

Подсказка: используйте 'зЬй :: Карта <станд :: строка, неподписанных Int>'. –

+1

Подсказка: [Частота] (https://en.wikipedia.org/wiki/Frequency_ (статистика)) – lcs

ответ

2

Вот некоторые подсказки для более удивительности:

std::istringstream awsome_stream(web_text); 
std::string word; 
std::map<std::string, unsigned int> kewl_words; 
while (awsome_stream >> word) 
{ 
    kewl_words[word]++; 
} 
std::cout << "Occurances of 'div': " << kewl_words["div"] << "\n"; 
Смежные вопросы