Задать вопрос
weranda
@weranda

Как выделить изображение внутри ссылки регуляркой?

Приветстсвую
Что-то я туплю с регуляркой. Есть кусок кода:
<a href="URL">XXX</a>XXX<a href="URL">XXX</a>XXX<a href="URL"><img src="URL" alt=""></a><a href="URL">XXX</a>XXX.

Надо как-то выделить только тег (ссылку), внутри которого есть изображение. Должно найтись:
<a href="URL" target="_blank"><img src="URL" alt=""></a>

Но по составленному мной выражению ищется вся строка:
<a .*?>(<img.*?/?>)</a>
Подскажите как найти искомое.
  • Вопрос задан
  • 35 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
orlov0562
@orlov0562
I'm cool!
Если я правильно понял, то ты ищешь опережающую проверку
~<a[^>]+>(?=<img)~

Пример на php
$text = '<a href="URL1">XXX</a>XXX<a href="URL2">XXX</a>XXX<a href="URL3"><img src="URL" alt=""></a><a href="URL">';
$regexp = '~<a[^>]+>(?=<img)~';
preg_match($regexp, $text, $regs);
echo htmlspecialchars($regs[0]);

выведет
<a href="URL3">
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Wanted. Санкт-Петербург
До 450 000 ₽
Wanted. Санкт-Петербург
До 120 000 ₽
Wanted. Санкт-Петербург
До 100 000 ₽
05 янв. 2025, в 04:27
35000 руб./за проект
05 янв. 2025, в 03:02
5000 руб./за проект