Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
☁️ Виртуальные серверы от 95 ₽

🖥 Хостинг сайтов PHP от 25 ₽

💰 Скидка 15% по промокоду CITFORUM на первый платёж!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Книги: [Классика] [Базы данных] [Internet/WWW] [Сети] [Программирование] [UNIX] [Windows] [Безопасность] [Графика] [Software Engineering] [ERP-системы] [Hardware]

     

Регулярные выражения. Библиотека программиста

Дж. Фридл

Издано: 2001, СПб., Питер
Для широкого круга разработчиков
ISBN: 5-318-00056-8
Мягкий переплет, 352 стр.
Формат: 70x100/16

Начало
Краткое содержание
Полное содержание
Структура книги
[Заказать книгу в магазине "Мистраль"]

Предисловие

Эта книга посвящена регулярным выражениям - мощному средству обработки текстов.

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

При работе с компьютером регулярные выражения могут использоваться очень часто (хотя возможно, вы об этом даже не подозреваете). В поисковых системах World Wide Web, редакторах, конфигурационных сценариях и системных утилитах регулярные выражения нередко поддерживаются в виде "возможностей для опытных пользователей". В таких языках, как Awk, Elisp, Expect, Perl, Python и Tcl, реализована встроенная поддержка регулярных выражений (и работа многих программ, написанных на этих языках, основана на регулярных выражениях), а для большинства других языков существуют библиотеки регулярных выражений. Например, вскоре после появления языка Java была написана библиотека регулярных выражений, бесплатно распространяемая через Web. Регулярные выражения поддерживаются в многих редакторах и средах программирования - v1, Delphi, Emacs, Brief, Visual C++, Nisus Writer и в многих других. Словом, область применения регулярных выражений очень широка.

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

Почему я написал эту книгу

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

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

Честно говоря, я не обладаю никакими талантами в том, что принято называть искусством. Я часто посещаю караоке-бары в Киото, но отсутствие слуха приходится компенсировать громкостью. И все же, когда мне удается найти элегантное решение трудной задачи, я чувствую себя настоящим творцом. В моей работе элегантные решения часто строятся именно на базе регулярных выражений. Поскольку мои немногочисленные творческие проявления часто связаны именно с регулярными выражениями, я стал к ним особенно неравнодушен. Работая над книгой, я хотел поделиться этой страстью с вами.

Для кого написана эта книга

Книга представляет интерес для всех, кто мог бы использовать регулярные выражения в своей работе. Если вы еще не представляете, насколько богатыми возможностями обладают регулярные выражения, для вас откроется целый мир. Многие кросс-платформенные программы и языки, упоминаемые в книге, существуют в бесплатных версиях для MacOS, DOS/Windows, Unix, VMS и на других платформах. Информация о том, где их найти, приведена в приложении А.

Все пользователи GNU Emacs и v1, все программисты, работающие на Perl, Tcl, Python или Awk, найдут здесь многочисленные технические подробности, рекомендации, советы, а самое главное - понимание новых возможностей, которые можно немедленно применить на практике. Столь подробного и скрупулезного изложения материала вы просто не найдете в других источниках.

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

Как читать эту книгу

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

Книга как повесть

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

Небольшой тест - попробуйте определить понятие "между". Помните: определяемое слово не может использоваться в определении! Ну как, получилось? Нет? Действительно, задача не из простых. Хорошо, что смысл этого слова понятен всем, иначе нам пришлось бы подолгу разъяснять его всем несведущим. Даже такие простые концепции бывает трудно описать кому-то, кто еще не знаком с ними.

До определенной степени сказанное относится и к регулярным выражениям. На самом деле регулярные выражения не так сложны, как их описания и объяснения. Я разработал определенный стиль изложения, начинающийся с главы 1, и надеюсь, что вы начнете читать именно с этой главы. Некоторые описания действительно сложны; не огорчайтесь, если некоторые разделы придется читать дважды. Говорят, практический опыт - 9/10 закона (или что-то в этом роде), поэтому вам придется потратить немало времени и усилий, прежде чем перед вами начнет вырисовываться общая картина.

Книга как справочник

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

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

Начало
Краткое содержание
Полное содержание
Структура книги
Заказать книгу в магазине "Мистраль"

 

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

ATLEX Выделенные серверы: в Европе / в России.

Виртуальные серверы: в Европе / в России.

Партнерская программа

VPS с гибкой конфигурацией: за 1€

Мощные выделенные сервера: от 25€

Собственный Дата-Центр
Поддержка 24/7

Виртуальные серверы VPS/VDS в России, Европе и США!

Промокод citforum - скидка 10% на заказ сервера!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...