この置換を試してください
Regex.Replace("text1 (text2) text3", // Input
@"([()])", // Pattern to match
string.Empty) // Item to replace
/* result: text1 text2 text3*/
説明
正規表現の置換では、一致する文字列全体が検索されます。一致するものが見つかった場合、そのアイテムが置き換えられます。したがって、一致パターンは次のようになります([()])
。つまり、これは
(
一致を開始するためにパターン内で必要なものであり、終了が必要)
です。そうでない場合、一致パターンのバランスが取れていません。
[]
パターンでは、私はキャラクターを探していて、セット[
を]
定義しています。それらはセットマッチと見なされます。最も一般的なのは [AZ] で、これは A で始まり Z で終わる任意の文字セットです。独自のセットを定義します。* [ と ] は1文字を探している正規表現を意味しますが、その中の多くの文字のセットを指定します。
(
また、指定できる)
セット内には、2 つの文字のセットがあることも意味します。これらの 2 つの文字は、開き括弧と閉じ括弧です。[()]
[)(]
()
つまり、(1) セット内の (2) ( または ) の任意の文字に一致することを確認します。その一致が見つかったら、( または ) を string.empty に置き換えます。
テキストに対して regex replace を実行すると、2 つの一致する(
text2 が見つかり、最後に一致する text2が見つかります)
。これらは string.empty に置き換えられます。