Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> парсинг имя файла, regex readdir filename parse 
V
    Опции темы
tcg2
Дата 30.5.2011, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 125
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



Описание: файл делится на 2 части, пытаюсь обе части записать в отд. переменные...вот и все ))
Вопрос конкретный: почему для переменных $name и $log пишет
Код

Use of uninitialized value $name in pattern match (m//) at...
 
Сам код (на зам.: выражение под регех срабатывает корректно):
Код

opendir (DIR, "/logdir") or die "couldn't open DIR $!";

while (defined ( my $filename = readdir(DIR)) ) {

        $filename =~ /^(\S+)-(vasya|petya|misha).log/;
        my $name = $1;
        my $log = $2;

Возможно я как-то не так передаю, прошу исправить!

Это сообщение отредактировал(а) tcg2 - 30.5.2011, 10:35
PM MAIL ICQ   Вверх
arto
Дата 30.5.2011, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



а что у вас происходит, если $filename не матчится?
PM MAIL ICQ   Вверх
Pfailed
Дата 30.5.2011, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 22
Всего: 39



Код

$filename =~ /^(\S+)-(vasya|petya|misha).log/
    or next;


Так будет лучше по-моему.


--------------------
PM MAIL   Вверх
tcg2
Дата 30.5.2011, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 125
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



filename, к сожалению всегда мачится )), регехы универсальные  smile. Я вроде бы разобрался, тему наверное закроем...только для тех кто желает ) помочь:
как сделать так (на пимеру выше), что если лог файл нулевой длинный, переходил на следующий?
Спасибо всем!
PM MAIL ICQ   Вверх
EcSYZ
Дата 30.5.2011, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 21.6.2007

Репутация: 1
Всего: 1



Код

next if( -z $filename );

PM MAIL WWW   Вверх
tcg2
Дата 30.5.2011, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 125
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



VINGRA-D-D-D РУЛИТТТТ!  smile 
Спасибо! Тема ПРЕзакрыта!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0465 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.