Ищет в тексте все слова с чётным количеством букв и возвращает строку, в которой они удалены - 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();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.923 из 5
Похожие ответы