Система Orphus

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

10 минут на урок

Автор: Бен Форта
Издательство: Вильямс, 2005
192 страниц

Материал предоставил: Алексей Кирюшкин
Найти в магазинах
Купить в Озоне (150 руб.)
Купить в Books.Ru
Купить в Болеро (93 руб.)
Купить в My-Shop.ru (113 руб.)

Аннотация

Содержание
Введение
Комментарии

Аннотация

В данной книге представлены все наиболее важные сведения о регулярных выражениях: основные понятия и концепции, наборы символов, метасимволы, повторители, поиск позиции, подвыражения, ссылки назад, контекстный поиск (просмотр вперед и назад), условная обработка, реализация регулярных выражений в популярных приложениях и языках.
Подробно рассматриваются все этапы подготовки и тестирования регулярных выражений. Все теоретические положения детально демонстрируются на содержательных примерах, которые часто встречаются на практике. Большое внимание уделяется прагматическому подходу к решению практических задач. Показывается творческий характер процесса разработки регулярных выражений. В заключение приводятся решения часто встречающихся практических задач. Приведенные решения вы можете использовать в своих программах.
Книга написана доступным, простым языком. Она будет полезна не только начинающим, но и тем, кто уже использовал регулярные выражения в своих программных проектах.

Содержание

Об авторе

Благодарности

Введение

Для кого предназначена эта книга

Урок 1. Знакомство с регулярными выражениями

Назначение регулярных выражений
Как используются регулярные выражения
Поиск с помощью регулярных выражений
Замены с помощью регулярных выражений
Так что же такое регулярное выражение?
Использование регулярных выражений
Перед началом
Резюме

Урок 2. Поиск отдельных символов

Поиск заданного текста
Сколько вхождений?
Указание зависимости от регистра
Поиск любого символа
Поиск специальных символов
Резюме

Урок 3. Соответствие набору символов

Соответствие одному из нескольких символов
Использование диапазона набора символов
Соответствие с чем угодно, кроме...
Резюме

Урок 4. Использование метасимволов

Символ \: новые встречи со старым знакомым
Поиск пробельных символов
Поиск символов определенных типов
Поиск цифр (и нецифровых символов)
Поиск алфавитно-цифровых символов (и символов, не относящихся к алфавитно-цифровым)
Поиск пробельных символов и символов, не относящихся к ним
Указание шестнадцатеричных и восьмеричных значений
Указание шестнадцатеричных значений
Указание восьмеричных значений
Использование символьных классов POSIX
Резюме

Урок 5. Повторение совпадений

Сколько совпадений?
Соответствие с одним или несколькими символами
Поиск нуля или большего количества символов
Соответствие с нулем вхождений или с вхождением одного символа
Использование интервалов
Указание точного количества совпадений
Установление соответствия в случае интервала-диапазона
Соответствие в случае интервала типа ''не менее''
Предотвращение лишних соответствий
Резюме

Урок 6. Соответствие позиций

Использование границ
Границы слова
Определение границ строк
Использование многострочного режима
Резюме

Урок 7. Использование подвыражений

Понятие подвыражения
Группировка подвыражений
Вложение подвыражений
Резюме

Урок 8. Использование ссылок назад

Понятие ссылки назад
Соответствие со ссылками назад
Выполнение операций замены
Замена регистра
Резюме

Урок 9. Просмотр вперед и назад

Что такое поиск контекста
Просмотр вперед
Просмотр назад
Совместное использование просмотра вперед и просмотра назад
Отрицание поиска контекста, или негативный поиск контекста
Резюме

Урок 10. Встроенные условия

Зачем встраивать условия?
Использование условий
Условия в ссылках назад - условные ссылки назад
Условия поиска контекста
Резюме

Приложение А. Регулярные выражения в популярных приложениях и языках

grep
JavaScript
Macromedia ColdFusion
Macromedia Dreamweaver
Macromedia HomeSite (и ColdFusion Studio)
Microsoft ASP
Microsoft ASP.NET
Microsoft C#
Microsoft .NET
Microsoft Visual Studio .NET
MySQL
Perl
PHP
Sun Java

Приложение Б. Решение практических задач с помощью регулярных выражений

Североамериканские номера телефонов
Американские почтовые индексы (U.S. ZIP Codes)
Канадские почтовые коды
Почтовые индексы Великобритании
Американские номера социального обеспечения (U.S. Social Security Numbers)
IP-адреса
URL
Полные URL
Адреса электронной почты
Комментарии HTML
Комментарии JavaScript
Номера кредитных карточек
Резюме

Приложение В. Испытатель регулярных выражений (Regular Expression Tester)

Знакомство с приложением Regular Expression Tester (испытатель регулярных выражений)
Выполнение операций поиска (Find)
Выполнение операций замены (Replace)
Получение копии приложения

Предметный указатель

Введение

Бен Форта

Регулярные выражения и язык регулярных выражений применяются на протяжении многих лет. Эксперты по регулярным выражениям давно используют этот невероятно мощный инструмент, который помогает выполнить любой тип обработки текста почти на любом языке и на любой платформе.

Это - хорошая новость. Плохая новость - то, что слишком длинные регулярные выражения были рассчитаны исключительно на наиболее технически подготовленных экспертов. Большинство пользователей не полностью понимает, что делают регулярные выражения и какие проблемы они решают. Но даже те, кто освоился с ними, находят, что синтаксис регулярных выражений интуитивно непонятен, а иногда и замысловат. Это грустно, потому что регулярные выражения все же не настолько сложны, как они кажутся на первый взгляд. Все, что требуется - ясное понимание решаемой проблемы и умение использовать силу регулярных выражений.

Частично проблема состоит в дефиците качественных пособий по данной теме. Немногие книги по регулярным выражениям (а на самом деле и большинство web-узлов, которые предлагают обучающие программы по регулярным выражениям) концентрируют свое внимание на синтаксисе, определяя, что делает { и чем + отличается от *. Но это - простая часть, ведь язык регулярных выражений совсем не богат специальными символами. Гораздо сложнее понять, как должны использоваться эти символы для решения реальных проблем.

Данная книга не предназначена для того, чтобы познакомить вас с последним словом теории регулярных выражений. В этом случае вам понадобится экземпляр книги Джеффри Фридла (Jeffrey Friedl) Mastering Regular Expressions, выпущенной издательством O'Reilly, ISBN 05960028901. Дж. Фридл - признанный гуру регулярных выражений, и его книга наиболее точно и полно освещает данную тему. Однако, не в упрек Дж. Фридлу, надо признать, что его книга не для новичков и даже не для случайных пользователей, цель которых - только выполнить свои задания, например, добавить проверку правильности HTML-форм или просто выполнить операции контекстной замены в анализируемом тексте, а не вникать в детали работы механизма регулярных выражений. Новичок, которому нужно быстро освоить регулярные выражения, часто бывает обескуражен отсутствием ответов на самые простые вопросы, возникающие в самом начале освоения регулярных выражений, и обилием руководств, рассчитанных на экспертов. Поэтому новичок часто не знает, с чего начать.

Именно для восполнения этого пробела как раз и предназначена данная книга. Книга Освой самостоятельно регулярные выражения. 10 Минут на урок расскажет вам о регулярных выражениях именно то, что вы действительно должны знать, начиная с простых сопоставлений с текстовым образцом, а затем познакомит вас с более сложными темами (разделами), включая использование возвратов, условных вычислений и применения просмотра вперед. Вы изучите то, что сможете использовать, причем материал излагается систематически, по единому методу, все разъяснения будут простыми, с использованием ясных и практических примеров, а также с решением реальных проблем - и все это в уроках, каждый из которых будет занимать 10 минут или меньше.

Теперь переходите к уроку 1, "Знакомство с регулярными выражениями", и принимайтесь за работу. В мгновение ока вы овладеете мощью регулярных выражений и будете удивляться, как вы могли обходиться без них.

Для кого предназначена эта книга

Эта книга - для вас, если вы

Комментарии

Алексей Кирюшкин

Эту книгу я начал читать в поезде, устроившись поудобнее на верхней полке. До сих пор не понимаю, как я с нее не упал, прочитав первую фразу:

Регулярные выражения (regular expressions), или сокращенно регвыр (regex) - ...

Дальше однако все пошло уже не так брутально, а скорее очень даже ничего. Как и обещано автором - от простого к сложному, на удачно подобранных примерах. Стиль изложения и способ подачи материала также весьма неплохи - компьютер под рукой и Regular Expression Tester (доступный на страничке автора) не требуются практически до самых последних глав.

Вообщем, отличная книга для начала знакомства с регвырами, КЫВТ рекомендует :))