Кто-нибудь может объяснить, почему Regex.Match захватывает не захватывающие группы. Ничего не могу найти об этом в MSDN. Почему
Regex regexObj = new Regex("(?:a)");
Match matchResults = regexObj.Match("aa");
while (matchResults.Success)
{
foreach (Capture g in matchResults.Captures)
{
Console.WriteLine(g.Value);
}
matchResults = matchResults.NextMatch();
}
выдает вывод
a
a
вместо пустого?