const regex = /<div(.*?)class=\"(.*?)articlePage\">(.*?)<\/div>/gu;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('<div(.*?)class=\\"(.*?)articlePage\\">(.*?)<\\\/div>', 'gu')
const str = ` <div class="WYSIWYG articlePage">
<div id="imgCarousel" class="imgCarousel">
<img alt="Cредний курс покупки/продажи наличного доллара в банках Москвы на 10:00 мск составил 78,13/99 руб." id="carouselImage" src="https://i-invdn-com.investing.com/news/moved_LYNXMPEHAG0NK_L.jpg" style="visibility:hidden">
<span class="text">© Reuters Cредний курс покупки/продажи наличного доллара в банках Москвы на 10:00 мск составил 78,13/99 руб.</span>
<i class="imgGrad"></i>
</div>
По состоянию на 10:00 мск на основе информации, предоставленной банками и обменными пунктами Москвы, Cредний курс покупки/продажи наличного доллара составил 78,13/99 <span class="aqPopupWrapper js-hover-me-wrapper"><a href="/currencies/usd-rub" id="6244069225ed1" class="aqlink js-hover-me" hoverme="aql" data-pairid="2186">руб. за доллар</a></span>. По сравнению с предыдущим днем Cредний курс покупки упал на 208 коп., Cредний курс продажи упал на 1492 коп.</p>
<p> Лучшие курсы покупки составили 84-83,9 руб. за доллар, лучшие курсы продажи 99-99,1 руб. за доллар.</p>
<p> Это автоматическое сообщение.</p> <div class="clear"></div>
</div>`;
// 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