Вытащить все ссылки из html документа
Предположим есть
$text = '<p> Текст <a href="site" class="js-gps-track js-link" target="_blank"></a></p>
<p>
Текст Текст Текст
<a href="site" class="js-gps-track js-link" target="_blank"></a>
Текст
</p>';
В данный момент использую new DOMDocument
Но по завершению, он удаляет пробелы с в начале строчки, а в конце добавляет строчку.
Вопрос в том, как возможно через регулярное выражение, в цикле перебрать все ссылки и вставить за место них содержимое атрибута href
$tx = preg_replace_callback('#<a[.]*?</a>#siu', function($m) {
print_r($m);
}, '<p> Текст <a href="site" class="js-gps-track js-link" target="_blank"></a></p>
<p>
Текст 2Текст Текст
<a href="site" class="js-gps-track js-link" target="_blank"></a>
Текст1
</p>');
print_r($tx);