.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;
}