Ссылки и регулярка

Тема в разделе "PHP", создана пользователем afonya09, 16 янв 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. afonya09

    afonya09

    Регистр.:
    31 янв 2009
    Сообщения:
    260
    Симпатии:
    18
    Как сделать чтобы ссылки вида:
    http://turbobit.net/szaa7wb53zxo.html
    http://depositfiles.com/ru/files/ir31p1czf
    http://rapidshare.com/files/336049138/JNWMDownload_Master_5.5.16.1181_and_Antibaner_komap.net.ru.rar
    http://letitbit.net/download/9175.e...5.16.1181_and_Antibaner_komap.net.ru.rar.html
    http://extabit.com/file/27u7z4b33d6kk

    Превращались в:
    <a href="http://turbobit.net/szaa7wb53zxo.html">http://turbobit.net/szaa7wb53zxo.html</a>
    <a href="http://depositfiles.com/ru/files/ir31p1czf">http://depositfiles.com/ru/files/ir31p1czf</a>
    <a href="http://rapidshare.com/files/336049138/JNWMDownload_Master_5.5.16.1181_and_Antibaner_komap.net.ru.rar">http://rapidshare.com/files/336049138/JNWMDownload_Master_5.5.16.1181_and_Antibaner_komap.net.ru.rar</a>
    <a href="http://letitbit.net/download/9175.e997c84e20394e96aae73ac59/Download_Master_5.5.16.1181_and_Antibaner_komap.net.ru.rar.html">http://letitbit.net/download/9175.e997c84e20394e96aae73ac59/Download_Master_5.5.16.1181_and_Antibaner_komap.net.ru.rar.html</a>
    <a href="http://extabit.com/file/27u7z4b33d6kk">http://extabit.com/file/27u7z4b33d6kk</a>


    Заранее спасибо!
     
  2. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217

    Смотря как эти ссылки получать, если просто в тексте находятся

    то можно как-то так
    PHP:
    $text preg_replace('%(http://.*?)["\'>\s]%i''<a href="\\1">\\1</a>'$text);
    Если просто можно выдрать каждую строчку отдельно изначально(ну например из файла берутся) тогда можно так

    PHP:
    $link '<a href="'.$link.'">'.$link.'</a>';
     
    afonya09 нравится это.
  3. afonya09

    afonya09

    Регистр.:
    31 янв 2009
    Сообщения:
    260
    Симпатии:
    18
    Так это затрагивает ссылки вида
    <noindex><a rel="nofollow" href="http://letitbit.net/download/7258.74ffdf7ab55e7f556cf7b911f/OrbitDownloaderSetup.exe.html" target="_blank">Скачать с Letitbit.net</a></noindex>

    Что неприемлимо.
     
  4. potuga

    potuga

    Регистр.:
    22 сен 2009
    Сообщения:
    376
    Симпатии:
    91
    используй ретроспективную негативную проверку

    PHP:
    $text preg_replace('%(?<![>"\'=])(http://.*?)["\'>\s]%i''<a href="\\1">\\1</a>'$text);
     
Статус темы:
Закрыта.