
10.03.2010, 19:21
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Сообщение от Nosfer
Подскажите регулярку под парсинг всех внешних ссылок (preg_match_all) на странице при условии, что в переменной $domain содержится урл домена (к примеру yandex.ru), а в переменной $data содержится нтмл-код страницы.
PHP код:
<?php
/**
* @author m0hze
* @copyright 2010
*/
function external2local($home,$away,$date){
$return = preg_replace('#(http:|https:|ftp:)\/\/(?!('.$home.'.*))#i', $away.'$0',$date);
return($return);
}
$data = 'Hey! Go to: <a href="htTps://lilo.ru/ffff.php">aaaaa</a> , and Hey! Go to: <a href="http://lilo.ru/ffff.php">aaaaa</a> Hey! Go to: <a href="Http://mydOmain.Ru/ff3ff.php">aaaaa</a>';
echo external2local('mydomain.ru','http://mydomain.ru/away.php?url=',$data);
?>
Как то так.На выходе будет:
Код:
Hey! Go to: <a href="http://mydomain.ru/away.php?url=htTps://lilo.ru/ffff.php">aaaaa</a> , and Hey! Go to: <a href="http://mydomain.ru/away.php?url=http://lilo.ru/ffff.php">aaaaa</a> Hey! Go to: <a href="Http://mydOmain.Ru/ff3ff.php">aaaaa</a>
|
|
|