Джеффри Фридл «Регулярные выражения»

regularТолько что дочитал книгу Джеффри Фридла «Регулярные выражения». Если говорить коротко, то издательство O’Reilly держит планку, книжка стоящая.

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

Вторая часть посвящена обсуждению обработки регулярных выражений. Здесь описывается работа трех типов механизмов регулярных выражений, которые встречаются: так называемые недетерминированный конечный автомат (НКА), детерминированный конечный автомат (ДКА) и POSIX НКА. В основном книга посвящена работе с НКА, который применяется в большинстве распространенных языках программирования (C#/VB.NET, Java, Perl и присутствует в PHP в виде функций preg).

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

В четвертой части подробно описываются возможности разных языков и сред (Perl, Java, .NET, PHP), касающихся работы с регулярными выражениями. На обложке еще упоминается Ruby, но в книге он затронут вскользь, но так же мельком проскакивает и Python с Tcl. Хотя я и не пишу на Perl’е (и надеюсь, что в ближайшее время не буду :)), но главу, посвященную только этому языку прочитал с удовольствием, интересно было узнать что в нем такого есть, чего нет в других языках.

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

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

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

PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

Пожалуйста, оцените запись

УжасноПлохоТак себеХорошоОтлично (Количество голосов: 2, средняя оценка: 5,00)
Загрузка...

Leave a comment

Subscribe without commenting