C# Динамический подсчет слов в тексте. Как сделать?
Добрый день. Нужно создать программу, в котором пользователь вводит текст, а сама программа в это время подсчитывает количество слов (внизу счетчик где показывает количество). Мне почти удалось реализовать этот алгоритм, с помощью функции Split. Но у меня возникла другая проблема. Когда я ставлю пробел или нажимаю enter, программа эти клавиши также забивает в счетчик, что неправильно. Пробовал задать условие. Выглядит вот так (код находится в методе KeyUp):
if ((e.KeyCode == Keys.Space) || (e.KeyCode == Keys.Enter)) { }
else
{
if ((e.KeyCode != Keys.Space) || (e.KeyCode != Keys.Enter))
SymbolCount.Text = richTextBox1.Text.Split(' ', ',', '.', ':', '\t', '\n').Length.ToString();
}
Сначала думал сработало, но когда я несколько раз нажимаю пробел или enter программа их сразу все в точности забивает в счетчик. Скажите как избавится от такой проблемы? Как сделать так чтобы он подсчитывал только слова, а не пробелы и энтеры?
Количество слов также можно посчитать используя regex. Тогда не придется делать огромный массив специальных символов и знаков пункции для функции Split.