Forum Webscript.Ru
Программирование => Perl => Тема начата: Alexandr от 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-х случаях обламывать проверку
-
m/\\,\\s+\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}/
-
Это как прикрутить?
-
Это как прикрутить?
$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;
-
регулярное выражение от Джеффри Фридла ( 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])$