Как с помощью регулярного выражения выбрать все параграфы, в которых есть конкретное слово?

Рейтинг: 0Ответов: 1Опубликовано: 11.03.2023

Допустим есть три параграфа, между которыми может отсутствовать перенос строки:

<p>xxx xxx xxx</p><p>xxx yyy xxx</p>

<p>xxx yyy xxx</p>

Нужно выбрать те, в которых есть "ууу", используя одно регулярное выражение. Вариант <p>[\w\W]+?yyy[\w\W]+?<\/p> - не работает, т.к между <p> и yyy может находиться </p>. Присутствие этого </p> нужно как-то исключить.

Ответы

▲ 0

Нужно выбрать те, в которых есть "ууу", используя одно регулярное выражение.

Предложу такой вариант для примера ТС...

const str = `<p>xxx xxx xxx</p><p>xxx yyy xxx1</p>

<p>xxx yyy xxx2</p>`
const re =/<p>[^>]*yyy[^<]*<\/p>/g
console.log(str.match(re))