Автор Тема: Выбор IP из строки  (Прочитано 2958 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Выбор IP из строки
« : 17 Февраля 2003, 12:54:09 »
Как выбрать корректный IP из след. строк:
\'\'
\'unknown\'
\'127.0.0.1, unknown\'
\'127.0.0.1\'
\'127.0.0.1, 123.123.0.23\'
\'127.0.0.1, 123.123.0.23, 123.123.0.23\'
?
Т.е. необходимо забирать только правую часть(если они перечислены ч/з зпт.), а первых 3-х случаях обламывать проверку
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Выбор IP из строки
« Ответ #1 : 17 Февраля 2003, 13:40:35 »

m/\\,\\s+\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}/
2B OR NOT 2B = FF

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Выбор IP из строки
« Ответ #2 : 17 Февраля 2003, 14:12:43 »
Это как прикрутить?
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн Wyclef

  • hello_worlder
  • Старожил
  • ****
  • Сообщений: 307
  • +0/-0
  • 2
    • Просмотр профиля
    • http://thug.narod.ru
Выбор IP из строки
« Ответ #3 : 17 Февраля 2003, 14:48:30 »
Цитировать
Это как прикрутить?


$line = \'127.0.0.1, 123.123.0.23, 123.123.0.23\';

if ($line =~ m/\\,\\s+(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})$/) {
    $ip = $1;
}

print $ip;
It\'s nice to be important, but it\'s more important to be nice!

Оффлайн innin

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://livejournal.com/users/innin
Выбор IP из строки
« Ответ #4 : 18 Февраля 2003, 18:16:10 »
регулярное выражение от Джеффри Фридла ( http://www.oreilly.com/catalog/regex2 ):

^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28