Есть кусок кода, который парсит исходный текст и все совпадения записывает в новую переменную, после каждого совпадения добавляется конец строки. Нужно его как-то преобразовать, чтобы брались только последние 10 совпадений. При этом реально там может быть даже меньше 10 совпадений, но код все равно должен нормально работать и записывать все найденные совпадения.
Код:
string result = String.Empty;
var millenium = "(?<=\\#).*?(?=\\#)";
var buff = Regex.Matches("текст", millenium);
foreach (Match item in buff)
{
var x = item.Value;
result += string.Concat(x +"\n");
}