Подсчитать сколько раз заданное слово встречается в сообщении - C# (181716)
Формулировка задачи:
Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются пробелами и знаками препинания. Подсчитать сколько раз заданное слово встречается в сообщении. Если можно еще с комментариями
Решение задачи: «Подсчитать сколько раз заданное слово встречается в сообщении»
textual
Листинг программы
string text = "мама мыла раму, папа пил пиво, пыщь пыщь";
string find = "пыщь";
int count = 0; int index = -1; // да, индекс изначально устанавливаем в -1
int textLength = text.Length, findLength = find.Length;
while ((textLength - index) >= findLength)
{
index = text.IndexOf(find, index + 1); // вот тут на первой итерации -1 превращается в 0
if (index != -1)
{
count++;
}
else break;
if ((textLength - index) == findLength) break;
}
Console.WriteLine("Слово '{0}' встречается в тексте '{1}' {2} раз", find, text, count);