Достать урл регуляркой

Статус
В этой теме нельзя размещать новые ответы.
Urch
В базе сайтов домены? тода если удовлетворяет
Код:
\.ru$
 
а тут, наверное, и без регулярки можно. Посмотри в сторону subst_count(). Если в строке ".ru" встречается - значит - наш клиент.
можно подробнее, я кодить ток учусь, subst_count() выводит кол-во встречаемых совпадений, а как из количества получить ссылки.

PHP:
$sites = "site.ru/index.php
site.com/index.php
site.de/index.php";
$sites_ru = substr_count($sites,".ru"); 
echo($sites); //выведет 1
 
Ясно, тогда
PHP:
preg_replace('{^(?![^/]* \.ru (?:/|$)).*[\r\n]*}mx', '', $text);
 
так а если там класс будет или другой атрибут =)
PHP:
preg_match('~<a[^>]*href=['"]+(.+?)['"]+[^>]*>~i', $page, $regs)
это ['"]+ кстати тоже не вариант ибо ссылки будут работать и так <a href=http://site.ru>
 
можно подробнее, я кодить ток учусь, subst_count() выводит кол-во встречаемых совпадений, а как из количества получить ссылки.

PHP:
$sites = "site.ru/index.php
site.com/index.php
site.de/index.php";
$sites_ru = substr_count($sites,".ru"); 
echo($sites); //выведет 1

Тебе ведь нужно просто знать - встречается ли в строке с доменом ".ru" или нет. Соответственно, если substr_count($sites,".ru") равно единице - этот домен рушный. Если равен нулю, то не ру.

PHP:
if($sites_ru==1){текущий сайт в ру-зоне}
 
  • Нравится
Реакции: Urch
Тебе ведь нужно просто знать - встречается ли в строке с доменом ".ru" или нет. Соответственно, если substr_count($sites,".ru") равно единице - этот домен рушный. Если равен нулю, то не ру.

PHP:
if($sites_ru==1){текущий сайт в ру-зоне}

есть и часные случаи ... типа Для просмотра ссылки Войди или Зарегистрируйся или Для просмотра ссылки Войди или Зарегистрируйся тут $sites_ru=2 =)
 
Тебе ведь нужно просто знать - встречается ли в строке с доменом ".ru" или нет. Соответственно, если substr_count($sites,".ru") равно единице - этот домен рушный. Если равен нулю, то не ру.

PHP:
if($sites_ru==1){текущий сайт в ру-зоне}


вот хоть убей непойму..
:bk:

PHP:
<?
$file = "sites.txt";
$bufer = file_get_contents($file);
$sites_ru = substr_count($bufer,".ru");
if($sites_ru==1)
{
что сюда написать чтобы выводились строки с .ru сайтами;
}  
?>
 
Да хоть как... И такое тоже будет работать. Главное помнить, что как заметили выше - если ".ru" встречается больше чем в одном случае - substr_count выдаст не единицу. Ну можно попробывать так:
PHP:
<?
$file = "sites.txt";
$domens=file($file);
for($i=0; $i<count($domens); $i++){
$domen=trim($domens[$i]);
if(substr_count($domen,".ru")!=0){
echo "Домен ".$domen." в зоне ru<br />";
}
}
?>
 
  • Нравится
Реакции: Urch
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху