проблема с eregi

Статус
В этой теме нельзя размещать новые ответы.

solaris

Новичок
проблема с eregi

Здравствуйте!
такая задача: нужно вытянуть из html страницы все ссылки. вот написал для этого функцию:

PHP:
function getrLinks($str,$ii,$site)
{
  $i=0;
  $str=strip_tags($str,'<a>');
  while(eregi("(.*)(<a )([^>]*)(href=)([^ |^>]*)([^>]*)(>)(.*)(</a>)(.*)",$str,$ar))
  { 
    $link=str_replace("'",'',$ar[5]);
    $link=str_replace("\"",'',$link);
    $text=$ar[8];
    $repld=$ar[2].$ar[3].$ar[4].$ar[5].$ar[6].$ar[7].$ar[8].$ar[9];
    $str=str_replace($repld,'',$str);
    $text=strip_tags($text);
    if($text and checkURL($link,$site))
    {
     //echo "<script>set_url_remote($ii);</script>\n";
     //flush();
     $links[$i]['link']=$link;
     $links[$i]['text']=$text;
     $i++;
    }
  unset($ar);
  }
  return $links;
}
Но функция реально тормозит....
Проходит около 1-2 секунд между итерациями..
Что я делаю не так?
Может есть более изящные способы справится с этой задачей?

Заранее Спасибо!
 

HraKK

Мудак
Команда форума
Мы не расматриваем, парсинг чужих страниц по морально этическим соображениям.
 

solaris

Новичок
блин, ну вы че совем чтоли?????? я ж парсю с целью анализаконкуренции.
Чего в этом плохого? к тому же вопрос был насчет eregi почему она тупит?

-~{}~ 19.10.07 14:36:

ок. вопрос подругому. можно ли использовать erregi для строк большой длины? я вот попробовал и убдился,что наверно нежелательно. Или проято я это не так делал?
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху