Удалить из предложения одинаковые слова стоящие рядом - C#

Узнай цену своей работы

Формулировка задачи:

Дана строка, содержащая текст на русском языке. В предложениях некоторые из слов записаны подряд несколько раз (предложение заканчивается точкой или знаком восклицания). Получить в новой строке отредактированный текст, в котором удалены подряд идущие вхождения слов в предложениях.

Решение задачи: «Удалить из предложения одинаковые слова стоящие рядом»

textual
Листинг программы
using System;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var s = "Дана строка строка, содержащая текст на русском языке. Дана строка, содержащая текст на на на русском языке!"; // Задаем строку
            var temp = s.Split(new [] {' '}, StringSplitOptions.RemoveEmptyEntries); // Делим ее на слова
            var res = String.Empty; // Создаем переменную для результата
            for (var i = 0; i < temp.Length - 1; i++) // Цикл по словам
                if (temp[i].TrimEnd(',', '.', '!', ':', ';') != temp[i + 1].TrimEnd(',', '.', '!', ':', ';')) // Если слово без знаков препинания не равно следующему слову без знаков препинания
                    res += temp[i] + " "; // то добавляем его и пробел к результату
            if (temp[temp.Length - 2].TrimEnd(',', '.', '!', ':', ';') !=
                temp[temp.Length - 1].TrimEnd(',', '.', '!', ':', ';')) res += temp[temp.Length - 1]; // Если последнее слово без знаков препинания не равно предпоследнему слову без знаков препинания, то добавляем последнее слово к результату
            Console.WriteLine(res); // Выводим результат на экран )))
            Console.ReadLine();
        }
    }
}

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


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

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

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