Поиск и замена строки html на js

Есть HTML страница, в которой есть:

<script>
"download":"https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4"}]}], hlsconfig: {
            p2pConfig: {
                logLevel: true,
                live: false, // set to true in live mode
            }
        }, preroll:"https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4 or https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4", cuid:"-4847", "poster":"/player/preview.jpg"});
 </script>. 

Нужно с помощью JS найти вот эту строчку:

preroll:"https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4 or https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4"

И заменить содержимое на

preroll:"https://example.ru/360.mp4"

Суть всей проблемы в том, что нельзя использовать jquery. Только чистый JS. Так же, сам скрипт почти всегда разный, но preroll: "123" всегда присутствует.


Ответы (1 шт):

Автор решения: Ein

Если, как вы написали, данные хранятся в переменной, то достаточно Регулярных выражений для поиска и замены.

<script>

var html = `
"download":"https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4"}]}], hlsconfig: {
            p2pConfig: {
                logLevel: true,
                live: false, // set to true in live mode
            }
        }, preroll:"https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4 or https://example.ru/tvseries/705f0bb/a28d21ac3:2708/360.mp4", cuid:"-4847", "poster":"/player/preview.jpg"});
 `;

html = html.replace(
    /preroll:".*?(\d+.mp4)"/gm,
    'preroll:"https://example.ru/$1"'
);

console.log(html);

</script>

→ Ссылка