Вы не можете сделать это с помощью одной операции сопоставления с регулярным выражением. Сначала необходимо получить год с одной группой захвата, а затем захватить весь текст со всеми данными за месяц в Группе 2, а затем выполнить другое регулярное выражение для значения Группы 2 только для того, чтобы получить все номера месяцев отдельно.
Вы можетеиспользовать
var text = "foo for 2019:\n\nmonth value\n 3 101\n 4 202\n 5 303\n\nbar for xyz";
var match = /foo\sfor\s(20\d\d):([^]+?)bar\sfor/.exec(text);
if (match) {
console.log("Year: ", match[1]);
var months = match[2].match(/\d+(?=[ \t]+\d)/gm);
console.log("Months: ", months);
}