[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Регулярные выражения
Serg007
Каким образом я могу проверить не заключена ли ссылка в <noindex></noindex> и не написана ли вот такая бяка: rel = "nofollow" внутри самого тега.

И еще, не подскажите как извлечь анкоры



Спустя 17 часов, 33 минуты, 27 секунд (13.01.2009 - 11:38) Serg007 написал(а):
Да ребятки, форум умер. Если раньше можно было получить ответ на любой вопрос, то сейчас глухо, как в танке. И модеров не видно....

Спустя 21 минута, 50 секунд (13.01.2009 - 12:00) sergeiss написал(а):
"Форум жил, форум жив, форум - будет жить" smile.gif

Тёзка, а свои соображения какие? Или надо обязательно всё за тебя сделать?

Спустя 4 часа, 18 минут, 15 секунд (13.01.2009 - 16:18) Serg007 написал(а):
Куда уж там. Пока сам не сделаешь никто не поможет:

анкоры сслок:
PHP
preg_match_all('/<a.+?>(.+?)</a>/is'$text$result);


ссылки с rel="nofollow":
PHP
preg_match_all('/<a href="(.+?)" rel="nofollow">/is'$text$result);


ссылки в <noindex>:
PHP
preg_match_all('/<noindex>(.+?)<\/noindex>/is'$text$result);

Спустя 2 часа, 11 минут (13.01.2009 - 18:29) Alchemist написал(а):
-2 за неверные решения

Спустя 46 минут, 5 секунд (13.01.2009 - 19:16) Serg007 написал(а):
Что именно неправильно?

Спустя 20 минут, 37 секунд (13.01.2009 - 19:36) Alchemist написал(а):
HTML
<p>Часто, когда я вижу подобные решения, они вызывают у меня <acronym title="состояние, характеризующееся столкновением в сознании индивида противоречивых знаний, убеждений, поведенческих установок относительно некоторого объекта или явления">когнитивный диссонанс</acronym>. С одной стороны <a href="http://phpforum.ru/index.php?showuser=1524" style="font-weight:bold" rel="nofollow">человек</a> явно пытался помочь, но с другой - <noindex ><a href="http://phpforum.ru/index.php?showtopic=15262">решения</a ></noindex> не просто не являются "идеальными", а вообще редко рекомендуемы к употреблению.</p>

<p><noindex>Впрочем, возможно авторам просто не хватает <a href="http://www.google.com">практики...</a></noindex></p>


В коде есть 3 ссылки, 1 ноуфоллоу и 2 ноуиндекса. Удачного парсинга !

Спустя 17 минут, 26 секунд (13.01.2009 - 19:54) Serg007 написал(а):
Вот это все нашло:

PHP
function get_all_url($data){
    
preg_match_all('|<a href=\"([^\"]*)[^>]*>|is'$data$out);
    return 
$out[1];
}

function get_noindex($data){
    preg_match_all('/<noindex>*(.+?)<\/noindex>/is', $data, $out);
    $arr = array();
    foreach ($out[1] as $shmat){
        $temp_arr = $this->get_all_url($shmat);
        foreach ($temp_arr as $url){
            $arr[] = $url;
        }
    }
    
    return $arr
;
}

function get_nofollow($data){
    preg_match_all('<a href="(.+?)" rel="nofollow">', $data, $out);
    return $out[1];
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.