| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > grep и предупреждение "Use of uninitialized value" |
| Автор: Suppir 3.4.2011, 17:42 | ||
| Добрый день! Пишу код:
При запуске Perl выдает: Use of uninitialized value $_ in pattern match (m//) at !parse_56.pl line 158, <IN> line 19. В чем состоит ошибка? |
| Автор: arto 3.4.2011, 17:49 |
| это не вы ли в прошлом вопросе хотели внесения в массив undef значений? |
| Автор: Suppir 3.4.2011, 18:02 | ||
| Нет, это уже для другой программы Добавлено @ 18:11 В общем, в @kon_pub содержатся строки: ------------------------------- "Кубанские новости N 1" "Кубанские новости N 2" "Кубанские новости N 3" "Кубанские новости N 4" "Кубанские новости N 6" ------------------------------- Необходимо убрать из массива все пустые строки. Т.е. он должен выглядеть так: ------------------------------- "Кубанские новости N 1" "Кубанские новости N 2" "Кубанские новости N 3" "Кубанские новости N 4" "Кубанские новости N 6" ------------------------------- Как это сделать? Вариант
выдает кучу предупреждений. |
| Автор: arto 3.4.2011, 19:07 |
| map { $_ || () } |
| Автор: Suppir 3.4.2011, 19:41 |
| arto, работает, спасибо. Хотя до такого кода догадаться невозможно в принципе. Только если заранее знать. |
| Автор: arto 3.4.2011, 22:40 |
| почему нельзя? используйте тогда, если это сложно, grep { $_ } . а вообще, есть старинное выражение -- "читайте документацию, она рулез!". |