Есть текст типа:
$dig='
Новости <a href="/news/israel/">Израиля</a>
<br>bla bla
<br> Новости<a href="/news/russia/">России</a>,
<br> и Новости <a href="/news/russia/moscow/">Москвы</a>,
<br> а может Новости <a href="/news/russia/moscow/sheremetyevo/">Шереметьева</a> ну и
<br> <a href="/news/russia/moscow/sheremetyevo/news123/">Новость 123</a>
';
/*
Нужно получить текст HTML:
Новости <a href="http://israel.site.com/">Израиля</a>
<br>bla bla
<br> Новости<a href="http://russia.site.com/">России</a>,
<br> и Новости <a href="http://russia.site.com/moscow.htm">Москвы</a>,
<br> а может Новости <a href="http://russia.site.com/moscow-sheremetyevo.htm">Шереметьева</a> ну и
<br> <a href="http://russia.site.com/moscow-sheremetyevo-news123.htm">Новость 123</a>
Пытался сделать так:
*/
if(eregi('\/news\/',$dig)){
$dig=preg_replace('#<a href="/news/(.+?)/(.+?)/(.+?)/(.+?)/">(.+?)</a>#msi'
,'<a href="http://\\1.site.com/\\2-\\3-\\4.htm">\\5</a>',$dig);
$dig=preg_replace('#<a href="/news/(.+?)/(.+?)/(.+?)/">(.+?)</a>#msi'
,'<a href="http://\\1.site.com/\\2-\\3.htm">\\4</a>',$dig);
$dig=preg_replace('#<a href="/news/(.+?)/(.+?)/">(.+?)</a>#msi'
,'<a href="http://\\1.site.com/\\2.htm">\\3</a>',$dig);
}
echo $dig;
Зачем нужно? Есть новости на старом сайте и транслируются на новый, где другая структура сайта, новостей ОЧЕНЬ много и не хочется дублировать. К сожалению моих знаний в РНР не хватает, что бы решить проблему...
Примечание:
Похоже специалисты здесь не водятся :-)
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.