キャプチャされた正規表現グループ (() で囲まれたもの)のみを表示しようとしていますが、何を試しても、キャプチャされたものと一致したものの両方が表示されます。
私が探しているのは、キャプチャされたグループのみを表示するソリューションです。
これは、上記の両方のグループを表示するサンプル コードです。
RegexOptions ignoreSpace = checkEditIgnoreSpaces.Checked ? RegexOptions.IgnorePatternWhitespace : RegexOptions.None;
RegexOptions ignorecase = checkEditIgnoreCase.Checked ? RegexOptions.IgnoreCase : RegexOptions.None;
RegexOptions multiline = checkEditMultiline.Checked ? RegexOptions.Multiline : RegexOptions.Singleline;
RegexOptions ignoreUnnamedGroups = checkEditCaptureUnnamedGroups.Checked ? RegexOptions.None : RegexOptions.ExplicitCapture;
MatchCollection mc = Regex.Matches(myRichTextBox1.Text, pattern, ignorecase | ignoreSpace | multiline | ignoreUnnamedGroups);
if (mc.Count > 0)
{
foreach (Match match in mc)
{
Console.WriteLine(match.Value);
}
}
match.Captures には、キャプチャされたグループのみが含まれることを望んでいましたが、そうではありません。