.NET 4.x Подсчёт повторяющихся слов в выбранном текстовом файле - C#
Формулировка задачи:
Здравствуйте. Помоги чайнику в решении задачи.
Необходимо написать код (консольное приложение) для определения повторяющихся слов в выбранном файле с расширением .txt и сделать "топ 5" повторяющихся слов из этого файла и указать кол-во раз сколько оно повторилось.
Заранее спасибо за помощь.
Решение задачи: «.NET 4.x Подсчёт повторяющихся слов в выбранном текстовом файле»
textual
Листинг программы
static void Main(string[] args)
{
var x = File.ReadAllText("Your path to file");
var words = x.Split(' ', '-', ':', '.', '"', '\'', '!', '?').Where(q=>!string.IsNullOrEmpty(q));
var uniqWrds = words.Select(q=>q.ToLower().Trim()).Distinct();
var result = new Dictionary<string,int>();
foreach(var word in uniqWrds)
{
result.Add(word, words.Count(q => q.ToLower().Equals(word)));
}
result = result.OrderByDescending(q => q.Value).ToList().Take(5).ToDictionary(key => key.Key, value => value.Value);
foreach(var word in result)
{
Console.WriteLine($"Word: {word.Key}. Count: {word.Value}");
}
Console.ReadKey();
}