Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Определение количество внешних url, с учетом всех вариантов написания тега <a>

15K
01 июля 2007 года
SUMDEX
32 / / 12.06.2007
Здравствуйте

Вопросы:
1.Коректно ли я написал регулярное выражение?
Выражение работает, но хотелось бы услышать мысли специалистов.
2.Возможно ли стразу вырезать внешние ссылки в одном регулярном выражении.
(пусть domen.ru - сайт у которого, нужно определить кол-во внешних ссылок)

Описание задачи:
Есть задача вырезать все внешние (только внешние) url из тегов <a>:
(если в параметре href указан протокол http - то вероятность, что ссылка внешняя увеличивается, ссылки без http внешними не бывают)

Нужно учесть все варианты, а именно:

Вариант 1:
(url заканчивается знаком ">")
$content_3='<a href=http://www.ya.ru>ссылка</a>';

Вариант 2:
(url заканчивается символом ")
$content_3='<a href="http://www.ya.ru" class=asa>ссылка</a>';

Вариант 3:
(url заканчивается символом ')
$content_3='<a href=\'http://www.ya.ru/\' class=asa>ссылка</a>';

Вариант 4:
(url заканчивается пробелом)
$content_3='<a href=http://www.ya.ru class=asa>ссылка</a>';

Вариант 5:
(url заканчивается переносом строки)
$content_3='<a href=http://www.ya.ru
class=asa>ссылка</a>';


Вырезаю я таким способом :

 
Код:
$content_3='Варианты ссылок (см. выше)';

 preg_match_all("|http://(.*)[>^\"^\'^\s^\n]|U", $content_3, $url,  PREG_PATTERN_ORDER);
 echo '$url[0][0] = '.$url[0][0].'<br>';
 echo '$url[1][0] = '.$url[1][0].'<br>';


Далее, я определяю, является ли ссылка внешней или нет....

Заранее спасибо
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог