Предисловие
1. Введение
Вопросы и ответы
Что означает "Perl"?
Где взять Perl?
Как написать программу на Perl?
Perl за две минуты
Упражнения
2. Скалярные данные
Числа
Строки
Встроенные предупреждения Perl
Скалярные переменные
Вывод командой print
Управляющая конструкция if
Получение данных от пользователя
Оператор chomp
Управляющая конструкция while
Значение undef
Функция defined
Упражнения
3. Списки и массивы
Обращение к элементам массива
Специальные индексы массивов
Списочные литералы
Списочное присваивание
Интерполяция массивов в строках
Управляющая конструкция foreach
Скалярный и списочный контекст
в списочном контексте
Упражнения
4. Пользовательские функции
Определение пользовательской функции
Вызов пользовательской функции
Возвращаемые значения
Аргументы
Приватные переменные в пользовательских функциях
Списки параметров переменной длины
О лексических переменных (my)
Директива use strict
Оператор return
Нескалярные возвращаемые значения
Статические приватные переменные
Упражнения
5. Ввод и вывод
Чтение данных из стандартного ввода
Ввод данных оператором
Аргументы вызова
Запись данных в стандартный вывод
Форматирование вывода
Файловые дескрипторы
Открытие файлового дескриптора
Фатальные ошибки и функция die
Использование файловых дескрипторов
Повторное открытие стандартного файлового дескриптора
Вывод функцией say
Упражнения
6. Хеши
Что такое хеш?
Обращение к элементам хеша
Функции хешей
Типичные операции с хешами
Хеш %ENV
Упражнения
7. В мире регулярных выражений
Что такое регулярные выражения?
Простые регулярные выражения
Символьные классы
Упражнения
8. Поиск совпадений с использованием регулярных выражений
Поиск совпадения оператором m//
Модификаторы
Якоря
Оператор привязки =~
Интерполяция в шаблонах
Переменные совпадения
Общие квантификаторы
Приоритеты
Тестовая программа
Упражнения
9. Обработка текста с использованием регулярных выражений
Замена с использованием оператора s///
Оператор split
Функция join
m// в списочном контексте
Другие возможности регулярных выражений
Упражнения
10. Другие управляющие конструкции
Управляющая конструкция unless
Управляющая конструкция until
Модификаторы выражений
Простейший блок
Секция elsif
Автоинкремент и автодекремент
Управляющая конструкция for
Управление циклом
Тернарный оператор ?:
Логические операторы
Упражнения
11. Модули Perl
Поиск модулей
Установка модулей
Использование простых модулей
Упражнения
12. Получение информации о файлах
Операторы проверки файлов
Функции stat и lstat
Функция localtime
Поразрядные операторы
Упражнения
13. Операции с каталогами
Перемещение по дереву каталогов
Глобы
Альтернативный синтаксис глобов
Дескрипторы каталогов
Рекурсивное чтение каталогов
Операции с файлами и каталогами
Удаление файлов
Переименование файлов
Ссылки и файлы
Создание и удаление каталогов
Изменение разрешений
Смена владельца
Изменение временных меток
Упражнения
14. Строки и сортировка
Поиск подстроки по индексу
Операции с подстроками и функция substr
Форматирование данных функцией sprintf
Расширенная сортировка
Упражнения
15. Умные сравнения и given-when
Оператор умного сравнения
Приоритеты умного сравнения
Команда given
Условия when с несколькими элементами
Упражнения
16. Управление процессами
Функция system
Функция exec
Переменные среды
Обратные апострофы и сохранение вывода
Процессы как файловые дескрипторы
Ветвление
Отправка и прием сигналов
Упражнения
17. Расширенные возможности Perl
Перехват ошибок в блоках eval
Отбор элементов списка
Преобразование элементов списка
Упрощенная запись ключей хешей
Срезы
Упражнения
A. Ответы к упражнениям
B. Темы, не вошедшие в книгу
Алфавитный указатель