かっこ内の任意の値を置き換える正規表現を使用してコードを書きたいと思います。以下のケースを取り上げます
ターゲット テキスト: ビルド (123)
build (##-build-##)
build (111)
build (xxyyzz)
すべての場合において、ページで「build ( * )」という単語を見つけて、目的の値に置き換えたいと考えています。
交換:
\b(build \()[^)]+(\))
と:
\1yourreplacementhere\2
次のコードを試してください。ただし、ネストされた括弧が無視されることに注意してください。
var pattern = @"build \((.+)\)";
var regex = new Regex(pattern);
string[] strings =
{
"build (##-build-##)",
"build (111)",
"build (xxyyzz)"
};
var results = strings.
Select(s => regex.Replace(s, "(foo)")).
ToArray();
//results = {build (foo), build(foo), build(foo)}
使用パターン(?<=build\s)\([^)]*\)
:
var input = "build (##-build-##)";
var result = Regex.Replace(input, @"(?<=build\s)\([^)]*\)", "new value");
Console.WriteLine(result);