using System; using System.Linq; using System.Text.RegularExpressions; public class Test { public static void Main() { var regex = new Regex(@"(?<=headerb)[\r\n]*(?:aa(?\d+)aaa[\r\n]*)+(?=headerc)", RegexOptions.Singleline); var match = regex.Match(_input); if (match.Success) { foreach (var number in match.Groups["number"].Captures.Cast()) { Console.WriteLine(number); } } } private static readonly string _input = @"headera aa1aaa aa2aaa aa3aaa headerb aa4aaa aa5aaa aa6aaa headerc aa7aaa aa8aaa aa9aaa"; }