Простые регулярные выражения

MiladyX
На сайте с 23.09.2008
Offline
65
549

Помогите плиз с preg_replace. Надо заменить в коде страницы ссылки и анкоры.

Вот хтмл:


<div class="sb"><h3><a href="http://en.wikipedia.org/wiki/" onmousedown="return si_T('&amp;ID=SERP,101.1')"><strong>Hi</strong> - Wikipedia, the free encyclopedia</a></h3></div>

Делаю так:


$new = preg_replace('/<h3><a href="[^"]+"><\/a><\/h3>/iUs','<h3><a href="'.$url.'">'.$title.'</a></h3>', $li);

не хочет...

[Удален]
#1


$new = preg_replace('/<h3><a href="[^"]+"[^>]*>.*?<\/a><\/h3>/iUs','<h3><a href="'.$url.'">'.$title.'</a></h3>', $li);
както так оппробуйте, уже не соображаю :)
MiladyX
На сайте с 23.09.2008
Offline
65
#2
bearman:

$new = preg_replace('/<h3><a href="[^"]+"[^>]*>.*?<\/a><\/h3>/iUs','<h3><a href="'.$url.'">'.$title.'</a></h3>', $li);
както так оппробуйте, уже не соображаю :)

Очередное вам спасибо, но или что то не так...или бок в скрипте в другом месте...вероятнее всего второе.

[Удален]
#3

Я не большой спец в регулярках - наверное что-то не понял... а что, разве так:

$new = preg_replace('<h3><a href=\".*?\">.*?<\/a><\/h3>','<h3><a href=\"'.$url.'\">'.$title.'<\/a><\/h3>', $li);

не?

B
На сайте с 24.09.2005
Offline
62
#4


$new = preg_replace('~(<a .*href=").+(".*>).+</a>~isU',"\\1".$url."\\2".$anchor."</a>",$li);
Куда делось свободное место (http://se-chronicle.blogspot.com/) на жестком диске

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий