[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как выделить урл из строки?
totje
вот условие, к примеру.
preg_match("/(http:\/\/|www\.|http:\/\/www\.)[^\"'\s]+/i", $str)

оно определяет, есть ли урл в строке или нет, но как затем вынуть этот урл из строки, чтобы вставить отдельно(делаю страницу редиректа)?
ну и вообще, насколько верно/правильно такое условие?

как вариант - подойдет ли разбивка строки по пробелам, а затем последующее сравнивание в цикле с 'http://' ? если да, то как это попроще сделать?)
хотя пока писал, понял - обрезать первые 7 символов у срвниваемой строки, а затем сравнивать с 'http://'.. это нормально?



Спустя 17 минут, 48 секунд (24.12.2010 - 10:27) hellmin написал(а):
if(preg_match("/(http:\/\/|www\.|http:\/\/www\.)(\w+\.\w{2,3})/i", $str, $matches))
echo $matches[2];

Спустя 11 минут, 13 секунд (24.12.2010 - 10:38) totje написал(а):
Цитата (hellmin @ 24.12.2010 - 07:27)
if(preg_match("/(http:\/\/|www\.|http:\/\/www\.)(\w+\.\w{2,3})/i", $str, $matches))
    echo $matches[2];

я в регулярках вообще ноль. догадываюсь разве что, что w{2,3} это домен должен быть, но он не выводится..
по такому правилу выводится только такая часть урла - "www.site", а нужно "www.site.ru", а еще лучше "http://www.site.ru", хотя это уже некритично

Спустя 14 минут, 51 секунда (24.12.2010 - 10:53) GRean написал(а):
тебе нужно вытащить и разобрать урл из адресной строки?

Спустя 3 минуты, 1 секунда (24.12.2010 - 10:56) hellmin написал(а):
if(preg_match("/((http:\/\/www\.)|(http:\/\/)|(www\.))(\w+\.\w{2,3})/i", $str, $matches))
{
print_r($matches);
/*
Чтобы вывести строку -> echo $matches[1].$matches[5];
Чтобы было
http://www.site.ru можно так поступить
echo '
http://www.'.$matches[5];
*/
}

Спустя 2 минуты, 59 секунд (24.12.2010 - 10:59) totje написал(а):
GRean
да, вытащить, но разбирать как раз не требуется
hellmin
на выходе Array ( [0] => http://www.site [1] => http:// [2] => www.site )
а имени доменной зоны так и нету=\
все, извиняюсь, заметил, что выражение подправлено:) спасибо
Быстрый ответ:

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