Ищет в тексте все слова с чётным количеством букв и возвращает строку, в которой они удалены - C#
Формулировка задачи:
Необходимо сделать через регулярные выражения
Мой код:
Проблема моего кода: он просто пропускает слова с четными количеством букв, и при это пропускаются знаки препинания, а необходимо именно удалить эти слова.
Листинг программы
- *Regex r = new Regex(@"\w+");
- string newtext = "";
- Match teg = r.Match(text);
- while (teg.Success)
- {
- if (teg.Length % 2 != 0) { newtext += teg + " "; }
- teg = teg.NextMatch();
- }
- return newtext;*/
Решение задачи: «Ищет в тексте все слова с чётным количеством букв и возвращает строку, в которой они удалены»
textual
Листинг программы
- Regex r = new Regex(@"\w+");
- MatchCollection mc = r.Matches(text);
- StringBuilder sb = new StringBuilder(text);
- for (int i = mc.Count-1; i >= 0; i--)
- {
- if (mc[i].Length % 2 == 0)
- sb.Remove(mc[i].Index, mc[i].Length);
- }
- return = sb.ToString();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д