
22.05.2010, 22:38
|
|
Moderator - Level 7
Регистрация: 04.02.2007
Сообщений: 554
С нами:
10139306
Репутация:
1089
|
|
Сообщение от GivioN
Сорь за нубский вопрос, но раскуривать регулярки нет время, поэтому написал сюда:
переменнная
PHP код:
$answer = "Updated Date: 30-jan-2008
Creation Date: 04-apr-1996
Expiration Date: 05-apr-2017 тут дальше бла бла бла
>>> Last update of whois database: Sat, 22 May 2010 15:31:30 UTC <<<";
выдернуть от туда вот это: 05-apr-2017
Пробовал через preg_match("/Expiration Date:\w{11} /", $answer, $date);
не получается =)
ясен пень что нифига не получиться....\w "Словарный" символ (символ, который используется в словах. Обычно все буквы, все цифры и знак подчеркивания ('_')) . ну и где ты тут тире (-) видеш? Тем более после Expiration Date: у тебя пробел стоит...
как вариант
PHP код:
preg_match('#Expiration Date:\s(.*)\s#iU',$answer,$date);
P.S. не проверял
Последний раз редактировалось Kusto; 23.05.2010 в 20:09..
|
|
|

23.05.2010, 00:54
|
|
Участник форума
Регистрация: 17.01.2008
Сообщений: 170
С нами:
9640431
Репутация:
105
|
|
Сообщение от GivioN
Сорь за нубский вопрос, но раскуривать регулярки нет время, поэтому написал сюда:
переменнная
PHP код:
$answer = "Updated Date: 30-jan-2008
Creation Date: 04-apr-1996
Expiration Date: 05-apr-2017 тут дальше бла бла бла
>>> Last update of whois database: Sat, 22 May 2010 15:31:30 UTC <<<";
выдернуть от туда вот это: 05-apr-2017
Пробовал через preg_match("/Expiration Date:\w{11} /", $answer, $date);
не получается =)
Код:
/Expiration Date: ([^ ]+)/
|
|
|

23.05.2010, 16:12
|
|
Познающий
Регистрация: 30.03.2008
Сообщений: 64
С нами:
9534042
Репутация:
15
|
|
Fuckel, твой вариант работает, но иногда whois выдает это:
PHP код:
Expiration Date: 05-apr-2017
>>> Last update of whois database: Sat, 22 May 2010 15:31:30 UTC <<<";
тогда получается что выдерается вот такая инфа:
|
|
|

23.05.2010, 20:13
|
|
Moderator - Level 7
Регистрация: 04.02.2007
Сообщений: 554
С нами:
10139306
Репутация:
1089
|
|
Сообщение от GivioN
Fuckel, твой вариант работает, но иногда whois выдает это:
PHP код:
Expiration Date: 05-apr-2017
>>> Last update of whois database: Sat, 22 May 2010 15:31:30 UTC <<<";
тогда получается что выдерается вот такая инфа:
PHP код:
<?php
$answer = 'Updated Date: 30-jan-2008
Creation Date: 04-apr-1996
Expiration Date: 05-apr-2017 тут дальше бла бла бла
>>> Last update of whois database: Sat, 22 May 2010 15:31:30 UTC <<<';
preg_match('#Expiration Date:\s(.*)\s#iU',$answer,$date);
echo $date[1];
?>
Сообщение от Compton
есть ли сервис в который вводишь штата он тебе его диапазоны ип?
http://worldips.info/
Последний раз редактировалось Kusto; 23.05.2010 в 20:15..
|
|
|

23.05.2010, 18:13
|
|
Участник форума
Регистрация: 31.01.2010
Сообщений: 170
С нами:
8566257
Репутация:
63
|
|
есть ли сервис в который вводишь штата он тебе его диапазоны ип?
|
|
|

24.05.2010, 12:17
|
|
Участник форума
Регистрация: 31.01.2010
Сообщений: 170
С нами:
8566257
Репутация:
63
|
|
есть код
PHP код:
<?
require('websock.php');
$wh=$_REQUEST['cit'];
$file=file_get_contents('base.txt');
preg_match_all('/(.+)\|'.trim($wh).', .+/',$file,$a);
foreach($a[1] as $h){
$s=new websock('nic.ru',80,false);
$ret=$s->get('/whois/?query='.$h.'');
preg_match('/NetRange: (.*) <br>/iU',$ret[1],$b);
echo $b[1].'<br>';
flush();
}
?>
он возвращает много ип
как удалить повторы?
|
|
|

24.05.2010, 12:38
|
|
Участник форума
Регистрация: 21.09.2008
Сообщений: 148
С нами:
9282050
Репутация:
102
|
|
разбиваешь результат на массив, а дальше - http://php.net/manual/en/function.array-unique.php
|
|
|

24.05.2010, 12:39
|
|
Участник форума
Регистрация: 31.01.2010
Сообщений: 170
С нами:
8566257
Репутация:
63
|
|
array_unique ошибки выдает
|
|
|

24.05.2010, 12:49
|
|
Участник форума
Регистрация: 21.09.2008
Сообщений: 148
С нами:
9282050
Репутация:
102
|
|
PHP код:
<?php
$x = Array('127.0.0.1', '127.0.0.2', '127.0.0.2', '111.111.111.0', '127.0.0.1');
print_r(array_unique($x));
?>
результат:
Код:
Array
(
[0] => 127.0.0.1
[1] => 127.0.0.2
[3] => 111.111.111.0
)
главной строку с ип-адрессами правильно на массив разбить
UPD: тебе надо что бы выводились уникальные ипы, или уникальные диапазоны ипов?
Последний раз редактировалось Failure; 24.05.2010 в 13:13..
|
|
|

24.05.2010, 12:53
|
|
Участник форума
Регистрация: 31.01.2010
Сообщений: 170
С нами:
8566257
Репутация:
63
|
|
в этом и смысл
а ипы идут так:
PHP код:
Array ( => 72.73.128.0 - 72.87.47.255 ) Array ( => 71.96.0.0 - 71.127.255.255 )
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|