Как вытащить атрибут href у ссылки

R
На сайте с 03.08.2012
Offline
131
3563

Фу, блин, что вообще не могу решить такую легкую задачу...

preg_match('/href=\"(.*)\"/',htmlspecialchars($link['0']),$matches)

Нефига не работает:( Подскажите, в чем проблема? И вообще как вытащить этот href...

В переменной $link['0'] ссылка вида: <a href="http....">123</a>

---------- Добавлено 30.11.2013 в 17:08 ----------

Спасибо, получилось

preg_match('/http(.*)"/',$link['0'],$matches);

:)

siv1987
На сайте с 02.04.2009
Offline
427
#1

preg_match('/href=[\"'](.*?)[\"']/', $link['0'], $matches);

Rulin
На сайте с 16.01.2008
Offline
143
#2
revered:

Спасибо, получилось
preg_match('/http(.*)"/',$link['0'],$matches);

:)

А если ссылка будет относительная и не будет начинаться с http?

Если вы парсите html код, и вам нужно вытащить href из тега a, то регулярка будет такая:

/<a[^>]+href=(:?'|")?([^'"\s]+)(:?'|"|\s)+[^>]*>/

p.s.

Другое дело что html удобнее парсить через DOM, но щас не об этом...

Bitcoin Debit Card

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