Я немного обеспокоен проблемой производительности при вызове RegEx.Replace для действительно большого количества строк, так как я понятия не имею, что происходит, если нет совпадений.
public static void ReplaceOldWithNew(ref string input)
{
string pattern = //something here
input = Regex.Replace(input, pattern, FormatReplacement);
}
private string FormatReplacement(Match m)
{
return String.Concat("x", formatCount++);
}
если у меня это так
public static void ReplaceOldWithNew(ref string input)
{
string pattern = //something here
if (RegEx.IsMatch(input, pattern))
input = Regex.Replace(input, pattern, FormatReplacement);
}
проблема в том, что он ищет входную строку два раза, если есть совпадение (я).Есть ли решение, которое будет искать совпадения только один раз и создавать новый экземпляр строки только при необходимости.Может быть, используя RegEx.Matches или что-то.
Спасибо & BR - Matti