Как сказал Гопи, но (теоретически) ловить только (three)
not two(three)
:
string input = "one two(three) (three) four five";
string output = input.Replace(" (three) ", " (four) ");
Когда я проверяю это, я получаю: "one two(three) (four) four five"
Просто помните, что белое пространство является string character тоже, поэтому его также можно заменить. Если бы я сделал это:
//use same input
string output = input.Replace(" ", ";");
Я получил бы one;two(three);(three);four;five"