Есть многострочная строка из текстового файла.
const str = `#EXTINF:0 tvg-rec="7",Первый канал HD
#EXTGRP:Общие
http://site.com/index.m3u8
#EXTINF:0 tvg-rec="0",Россия 1 HD
#EXTGRP:Общие
http://site.com/index.m3u8
#EXTINF:0 tvg-rec="7",ТВ3 HD
#EXTGRP:Общие
http://site.com/index.m3u8`;
С помощью регулярного выражения хочу разбить текст на массив такого вида
const arr = [
'#EXTINF:0 tvg-rec="7",Первый канал HD\n#EXTGRP:Общие\nhttp://site.com/index.m3u8',
'#EXTINF:0 tvg-rec="0",Россия 1 HD\n#EXTGRP:Общие\nhttp://site.com/index.m3u8',
'#EXTINF:0 tvg-rec="7",ТВ3 HD\n#EXTGRP:Общие\nhttp://site.com/index.m3u8',
];
Но я не очень умею в регулярные и у меня не получается побороть многострочность, флаг m не помогает
Выходит получить только первую одну из нужных строк, но в отдельные элемены
/^#EXTINF.*/gim;
[
'#EXTINF:0 tvg-rec="7",Первый канал HD',
'#EXTINF:0 tvg-rec="0",Россия 1 HD',
'#EXTINF:0 tvg-rec="7",ТВ3 HD'
]
Либо весь текст в одну строку
/^#Extinf[\S\s]*.*m3u8$/gim
[
'#EXTINF:0 tvg-rec="7",Первый канал HD\n' +
'#EXTGRP:Общие\n' +
'http://site.com/index.m3u8\n' +
'#EXTINF:0 tvg-rec="0",Россия 1 HD\n' +
'#EXTGRP:Общие\n' +
'http://site.com/index.m3u8\n' +
'#EXTINF:0 tvg-rec="7",ТВ3 HD\n' +
'#EXTGRP:Общие\n' +
'http://site.com/index.m3u8'
]
Помогите решить мою задачу. Понимаю что можно сделать проще с помощью split, но хочу научиться именно с помощью регулярного выражения