|
Модераторы: korob2001, ginnie |
|
BlackPhantom |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 19.3.2009 Репутация: нет Всего: нет |
Поскольку сам в перле совсем ни бум-бум, прошу помощи у "зала" ...
есть текстовый файл с блоками: #lease 122.24.1.85 { # starts 3 2007/11/07 01:56:06; # ends 3 2007/11/14 01:56:06; # binding state active; # next binding state free; # hardware ethernet 00:15:f2:e0:69:4d; # uid "\001\000\037\320\003V\221"; # client-hostname "Sasha"; #} и есть процедура, которая вычитывает эти блоки из файла, и сопоставляет IP машины с ее hostname.
проблема в том, что пока в блоках нет строки # uid "\001\000\037\320\003V\221"; выходной файл форматируется нормально, но как только она появляется, сбивается форматирование, и получается "каша"... подскажите что тут надо подправить. Заранее спасибо... |
|||
|
||||
amg |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
Если пытаться обойтись минимальной правкой, то так:
$tmp =~ m/\n(.*?)hostname\s"(.*?)"/ or next; Хотя, возможно, or next лишнее, если было задумано, чтобы, в случае отсутствия hostname в хэш заносилось все содержимое блока. Это сообщение отредактировал(а) amg - 19.3.2009, 15:31 |
|||
|
||||
BlackPhantom |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 19.3.2009 Репутация: нет Всего: нет |
спасибо, помогло !!!
|
|||
|
||||
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |