.NET 4.x Удаление последовательно повторяющихся символов в строке - C#

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

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

Имеется несколько вариантов одной переменной типа string:
5****R 5*R* 5*R***
Каким образом удалить рядом стоящие * и привести результат к виду
5*R 5*R* 5*R*
Это не массив, это просто различные виды одной переменной.
Собсна..
public static string RemoveDuplicateChars(string input, string key)
        {
            if (key.Length >1)
            {
                return input;
            }
            string newString = String.Empty;
            for (int i = 0; i < input.Length; i++)
            {
                if (i == 0)
                {
                    newString += input[i];
                    continue;
                }
                if (input[i] != input[i-1])
                {
                    newString += input[i];
                }
            }
            return newString;
        }
Всё верно?

Решение задачи: «.NET 4.x Удаление последовательно повторяющихся символов в строке»

textual
Листинг программы
public static string RemoveDuplicateChars(string input, string key)
{
    foreach (var ch in key)
    {
        string charString = Regex.Escape(new string(ch, 1));
        input = Regex.Replace(input, @"("+charString+@")\1+", "$1");
    }
    return input;
}

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


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

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

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