Умножение строк в c#

Можно ли реализовать умножение строк в c# как в Python ?

Например: "string" * 5 и получаешь "stringstringstringstringstring"


Ответы (1 шт):

Автор решения: Алексей Шиманский

Если использовать using System.Linq; то:

string result = string.Concat(Enumerable.Repeat("text" , 5));    
Console.WriteLine(result);

Используя using System.Text;

string result = new StringBuilder().Insert(0, "string", 5).ToString();   
Console.WriteLine(result);

Если подобное поведение нужно использовать часто, можно обернуть все это в метод расширения:

public static class StringExtensions
{
    public static string Repeat(this string value, int count) => string.Concat(Enumerable.Repeat(value, count));
}

И использовать вот так:

"string".Repeat(5);
→ Ссылка