int newCount = 6;
string test = "We have files (15 files)";
test = Regex.Replace(test, @"\([0-9]+", newCount.ToString());
Я пытался внести наименьшее количество изменений
вам не хватает оператора "+", который в основном говорит "один или несколько"
и после вашего Редактировать вам также не хватает "\", в котором отсутствует специальный символ
, вы всегда можете поиграть с регулярным выражением в сети и проверить свой шаблон здесь
Редактировать:
test = Regex.Replace(test, "[(0-9]", "(" + newCount);
не будет работать, потому что вы замените первое столкновение каждого паттерна, и вы получите: We have files (6(6(6 files)
, потому что оно соответствует "(", "1", "5"
, и еслиисходный текст был We have files (156 files)
[добавлено 6 в конце], вы получите We have files (6(6(6(6 files)
, потому что он не соответствует "(", "1", "5", "6"