За последние 24 часа нас посетили 17824 программиста и 1286 роботов. Сейчас ищут 1544 программиста ...

Замена href по опредиленным id

Тема в разделе "Регулярные выражения", создана пользователем bruno, 8 апр 2007.

  1. bruno

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

    С нами с:
    9 дек 2006
    Сообщения:
    122
    Симпатии:
    0
    Задача:
    Нужно привести все ссилки вида
    Код (Text):
    1.  
    2. <a id="notshared" href="http://somepage.ru">
    в
    Код (Text):
    1.  
    2. <a href="noacsess.php">
    Использую
    Код (Text):
    1.  
    2. $res = preg_replace("/id=\"notshared\" href=\\S+>/", "href=noacsess.php>", $text);

    и линки которие должны были заменитса не выводятса вообще :!: :?:
     
  2. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    str_replace
     
  3. bruno

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

    С нами с:
    9 дек 2006
    Сообщения:
    122
    Симпатии:
    0
    Sergey89,
    $res = str_replace("/id=\"notshared\" href=\\S+>/", "href=noacsess.php>", $text);
    ?
     
  4. simpson

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

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    PHP:
    1. <?php
    2. $str = 'text <a id="notshared" href="http://somepage.ru">link</a> text
    3. <a id="notshared" href=http://somepage.ru class="url">link</a> text <a id="notshared" href=http://somepage.ru>link</a>';
    4.  
    5. print preg_replace('~id="notshared"\s*href=[^>\s]+~i', 'href="noaccess.php"', $str);
    6. ?>
     
  5. bruno

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

    С нами с:
    9 дек 2006
    Сообщения:
    122
    Симпатии:
    0
    simpson
    Большое Вам спасибо!
    P.S Какой простой и хороший мануал подскажите по регулярках?
     
  6. simpson

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

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург