const regex = /(?<=")(?:[A-Z][a-f0-9]{84}|[A-F0-9]{36})(?=")/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(?<=")(?:[A-Z][a-f0-9]{84}|[A-F0-9]{36})(?=")', 'gm')
const str = `\$(document).ready(function() {
vlive.tv.common.init("en", "VE", "5454545");
vlive.video.init("VOD", "45454", "VOD_ON_AIR", "NONE", "54454F",
"6FABE43B271345FFCFA4D2028AF85F80C9F6",
"V1294005a2aac29b64592ce9e636d68fb5506721c2ceac160d67a0488c1d25f3314bace9e636d68fb5506",
[],
"", "true", "false");
new vlive.video.list().init("suggest", "6", "/video/suggest/more", {videoSeq:"454545", channelCode:"54545"}); new vlive.video.list().init("upcoming", "6", "/video/upcoming/more", {videoSeq:"54545", playlistSeq:"", channelCode:"5454545"});
vlive.tv.live.thumb.handler.init("https://vlive-thumb.pstatic.net");
vlive.tv.share.init("Some Title", "https://www.vlive.tv/video/xxxx", "https://v-phinf.pstatic.net/20190811_131/4509495095_JPEG/93e3a15d-bc43-11e9-a12f-5054343_43.jpg?type=a720_play", "shareVod_343434_4455457", "45454");
vlive.video.showShoppingBanner("4544343");
});`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions