За последние 24 часа нас посетили 21346 программистов и 1693 робота. Сейчас ищут 1939 программистов ...

Помогите реализовать

Тема в разделе "Регулярные выражения", создана пользователем BlackDream, 13 июл 2009.

  1. BlackDream

    BlackDream Активный пользователь

    С нами с:
    13 июл 2009
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте. Подскажите пожалуйста 2 вещи.
    1. есть такой php-код:
    PHP:
    1. <?php
    2. function url_replace($m){
    3. if(empty($m[3]))
    4. return '<a href="'.$m[1].'">'.$m[2].'</a>';
    5. else
    6. return '<a href="'.$m[3]. '">'.$m[3].'</a>';}
    7.  
    8. $message = preg_replace_callback('~\\[url=([url=http://.+]http://.+[/url]?)\\](.+?)\\[/url\\]|([url=http://(www]http://(www[/url].)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~', 'url_replace', $message);
    9. ?>
    этот код ищет и вырезает из переменной $message все ссылки, делая их кликабельными для браузеров и вырезает bb-код вида название, так же превращая его в ссылку. Так вот, помогите пожалуйста с регулярным выражением, обратном данному.

    2.
    PHP:
    1. <?php
    2. $message=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/~%#]*(\\?[[:alnum:]?+&_=/%#]*)?)?)", '[Реклама запрещена]', $message);
    3. ?>
    код вырезает ссылки из текста и меняет их на [Реклама запрещена]. А как сделать тоже самое только при помощи preg_replace?