За последние 24 часа нас посетили 51468 программистов и 1442 робота. Сейчас ищут 1180 программистов ...

Как заменить только ссылки в теге a ?

Тема в разделе "Прочие вопросы по PHP", создана пользователем zahermaher, 6 сен 2015.

  1. zahermaher

    zahermaher Новичок

    С нами с:
    27 сен 2014
    Сообщения:
    169
    Симпатии:
    14
    Здравствуйте.
    как заменить ссылку только в теге "a" и не заменять в теге img ?

    Пробую так,но не получается :
    Код (PHP):
    1. str_replace("#[url=".$url."].*?[/url]#i", $line, $foot_cut);
    2.  
    в переменной $url есть ссылка которую нужно заменить,она присутствует в теге a

    Заранее благодарен за помощь.
     
  2. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    регулярным выражение, которое ты попробовал составить.
    только к регулярным выражениям ни имеет ни какого отношения функция str_replace, тебе надо preg_replace.

    выражение должно выглядеть так:
    Код (Text):
    1. /<a(.*?)href\=(\"|\')(.+?)(\"|\')(.*?)>/isu
    где ссылка будет идти под 3-м индексом (вроде как).

    Добавлено спустя 19 секунд:
    и внимательно читай описание preg_replace

    Добавлено спустя 52 секунды:
    и еще если ты из вне вставляешь какой то текст в ригулярку его надо экранировать функцией preg_quote