Используйте метод Regex.Match
вместо Regex.IsMatch
.Это вернет объект Match
, который позволит вам проверить свойство Success
, а затем обратиться к соответствующему значению:
Match m = Regex.Match(line, idsToMacthAsRegexp);
if (m.Success)
{
Console.WriteLine(m.Value);
}
Что касается номеров строк, которые не имеют ничего общего с регулярным выражением (если толькоэто то, что вы соответствуете, но это не похоже на ваш шаблон).Для этого, возможно, вы захотите объявить переменную-счетчик вне вашего цикла, установить ее в ноль и увеличивать ее при каждом проходе цикла (сразу после оператора while
).