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

Как с помощью php разбить html текст на теги «a» (ссылки) в массив?

Есть строка состоящая из ссылок типа:

<a href="https://mysite.ru"><img src="https://mysite.ru//image1.jpg" ></a><a href="https://mysite.ru"><img src="https://mysite.ru//image2.jpg" ></a><a href="https://mysite.ru"><img src="https://mysite.ru//image3.jpg" ></a>

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

array[0] = '<a href="https://mysite.ru"><img src="https://mysite.ru/image1.jpg" ></a>';
array[1] = '<a href="https://mysite.ru"><img src="https://mysite.ru/image2.jpg" ></a>';
array[2] = '<a href="https://mysite.ru"><img src="https://mysite.ru/image3.jpg" ></a>';

Находил такое, но эта регулярка разбивает на каждый элемент:

preg_match_all('#<([a-z]+)[^/>]*(?:/>|>(?:.+\1>))#Uis',$content,$array);
foreach ($array[0] AS $val) echo $val;
  • Вопрос задан
  • 141 просмотр
Подписаться 1 Простой Комментировать
Решение пользователя AUser0 К ответам на вопрос (2)
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
preg_match_all('#(<a\s[^>]*>.+?</a>)#is',$content,$array);
foreach ($array[1] AS $val) echo $val;
Ответ написан