Добавить код HTML после ссылки

176
10 декабря 2016, 10:07

На веб-страницах сайта существуют ссылки на архивы для загрузки файла.

Ссылки такого вида:

<a title="" href="http://site.ru/downloads/soft.zip">bestsoft</a>

Нужно после каждой такой ссылки вставить тег HTML, например <hr />. Т.е. после закрывающего тега </a> стразу должен быть тег <hr />.

Вот как нужно:

<a title="" href="http://site.ru/downloads/soft.zip">bestsoft</a><hr />

Что я делал:

Я нашел на веб-страницах такие ссылки по расширению файла, регуляркой.

$html = preg_replace('/<a[^>]+.zip[^"]*">(.*?)<\/a>$/', '<hr />', $html);
return $html;

Но ссылки заменились тегом <hr />.

Вопрос:

Какой правильный код, который добавит тег HTML сразу после ссылок на архив с расширением файлов .zip, .rar, .7-zip?

Answer 1
<a title="" href="<?php echo 'you link'; ?>"><?php echo 'you name'; ?></a><hr />
Answer 2

preg_replace('/(<a.+?\.zip".+?<\/a>)/', '$1<hr />', $subject);

Answer 3

Полностью рабочий пример:

function addhtml_forlink( $text ) {
   $html = '<hr />';
   $text = preg_replace('/<a[^>]+\.(zip|rar|gz|tar)[^"]*">(.*?)<\/a>/',"$0$html", $text);
return $text;
} 
READ ALSO
Pubnub проблемы с PAM

Pubnub проблемы с PAM

Столкнулся с проблемой, что grant и revoke можно применить только через некоторое времяТ

190
Внешние ключи при миграциях symfony3

Внешние ключи при миграциях symfony3

Как добавить внешний ключ при миграциях? Используется DoctrineMigrationsBundle

171
логика кода на opencart 2

логика кода на opencart 2

не могу понять логику кода из opencart 2,

232