Регулярные выражения: основы

Майкл Фицджеральд

Обложка:


Содержание

Об авторе 9
Об изображении на обложке 9
Введение 11
Для кого предназначена эта книга 12
Что необходимо для работы с книгой 13
Соглашения, принятые в книге 13
Использование кода примеров 14
Ждем ваших отзывов! 14
Глава 1. Что такое регулярные выражения 15
Приложение RegexPal 16
Соответствие телефонному номеру 17
Задание соответствия цифрам с помощью символьных классов 18
Использование символьных сокращений 18
Соответствие произвольному одиночному символу 19
Захватывающие группы и обратные ссылки 19
Использование квантификаторов 20
Использование литеральных круглых скобок 21
Приложения со встроенным механизмом регулярных выражений 23
О чем вы узнали в главе 1 25
На заметку 25
Глава 2. Сопоставление с простыми шаблонами 27
Соответствие литеральному тексту 29
Соответствие цифрам 29
Соответствие нецифровым символам 31
Соответствие словарным и несловарным символам 32
Соответствие пробелам 34
Соответствие произвольному символу 35
Разметка текста тегами 38
Использование редактора sed для разметки текста 38
Использование Perl для разметки текста 39
О чем вы узнали в главе 2 41
На заметку 41
Глава 3. Границы 43
Начало и конец строки 43
Позиции, являющиеся и не являющиеся границами слов 45
Другие якорные привязки 47
Задание группы символов как литералов 48
Добавление тегов 49
Добавление тегов с помощью sed 50
Добавление тегов с помощью Perl 51
Стр. 6
Содержание
7
О чем вы узнали в главе 3 52
На заметку 52
Глава 4. Альтернативы, группы и обратные ссылки 55
Чередование 55
Подшаблоны 59
Захватывающие группы и обратные ссылки 60
Именованные группы 62
Незахватыващие группы 64
Атомарные группы 64
О чем вы узнали в главе 4 65
На заметку 65
Глава 5. Символьные классы 67
Инвертированные символьные классы 69
Объединение и разность 70
Символьные классы POSIX 71
О чем вы узнали в главе 5 73
На заметку 73
Глава 6. Сопоставление с символами Unicode и другими символами 75
Сопоставление с символами Unicode 76
Использование редактора vim 78
Поиск соответствий восьмеричным кодам символов 79
Поиск соответствий свойствам символов Unicode 79
Поиск соответствий управляющим символам 83
О чем вы узнали в главе 6 85
На заметку 85
Глава 7. Квантификаторы 87
Жадный, ленивый и сверхжадный поиск 88
Сопоставление с использованием квантификаторов *, + и ? 88
Соответствие заданному количеству повторений символа 90
Ленивые квантификаторы 91
Сверхжадные квантификаторы 92
О чем вы узнали в главе 7 93
На заметку 94
Глава 8. Группы проверки 95
Положительная опережающая проверка 95
Отрицательная опережающая проверка 98
Положительная ретроспективная проверка 99
Отрицательная ретроспективная проверка 99
О чем вы узнали в главе 8 100
На заметку 100
Стр. 7
8
Содержание
Глава 9. Разметка документа тегами HTML5 101
Сопоставление с тегами 101
Преобразование простого текста с помощью редактора sed 103
Замена текста с помощью редактора sed 103
Обработка римских цифр в редакторе sed 104
Обработка отдельного абзаца в редакторе sed 105
Обработка строк поэмы в редакторе sed 105
Добавление тегов 106
Использование командного файла в редакторе sed 107
Преобразование простого текста с помощью Perl 108
Обработка римских цифр с помощью Perl 110
Обработка отдельного абзаца с помощью Perl 110
Обработка строк поэмы с помощью Perl 110
Использование командного файла в Perl 111
О чем вы узнали в главе 9 112
На заметку 113
Глава 10. Конец начала 115
Что дальше 116
Инструменты, реализации и библиотеки 117
Perl 117
PCRE 117
Ruby (Oniguruma) 118
Python 118
RE2 118
Сопоставление с телефонными номерами в формате, принятом в США и Канаде 119
Сопоставление с адресами электронной почты 120
О чем вы узнали в главе 10 120
Приложение А. Справочник по регулярным выражениям 121
Регулярные выражения в QED 121
Метасимволы 122
Специальные символы 123
Пробельные символы 124
Пробельные символы Unicode 124
Управляющие символы 125
Свойства символов 127
Имена шрифтов в свойствах символов 128
Символьные классы POSIX 129
Опции и модификаторы 130
Таблица кодов ASCII и представление ASCII-символов в регулярных выражениях 130
На заметку 135
Глоссарий 136
Предметный указатель 144
Стр. 8