Новые книги

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

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

2-е издание.

Ранее книга издавалась под названием «Бизнес-прорыв. Восемь стратегий достижения выдающихся практических результатов».
Практическое руководство по созданию современных Web-сайтов, соответствующих концепции Web 2.0. Описаны языки HTML 5 и CSS 3, применяемые, соответственно, для создания содержимого и представления Web-страниц. Даны принципы Web-программирования на языке JavaScript с использованием библиотеки Ext Core. Рассказано о создании интерактивных Web-страниц, приведены примеры интерактивных элементов, позволяющие сделать Web-страницы удобнее для посетителя. Раскрыты вопросы реализации подгружаемого и генерируемого содержимого, семантической разметки, применения баз данных для формирования Web-страниц. Показаны способы расширения функциональности Web-сайтов с использованием Web-форм, элементов управления, свободно позиционируемых элементов и программного рисования средствами HTML 5.

Фунции Регулярных Выражений (Perl-Совместимые)

Учебник РНР
Назад Вперёд

LXXXVII. Функции регулярных выражений
(Perl-совместимые)

Синтаксис патэрнов, используемый в этих функциях, очень напоминает Perl. Выражение должно быть заключено в ограничители, слэши (/), например. В качестве ограничителей могут использоваться любые символы, кроме не алфавитных символов, цифр и обратного слэша (\). Если символ ограничителя должен использоваться в самом выражении, он должен мнемонизироваться/escape обратным слэшем. Начиная с PHP 4.0.4, вы можете также использовать парные ограничители в стиле Perl: (), {}, [] и <>.

После конечного ограничителя могут идти различные модификаторы, влияющие на подстановку. См. Модификаторы патэрна.

PHP также поддерживает регулярные выражения, использующие расширенный синтаксис POSIX с функциями POSIX-extended regex.

Требования

Поддержка регулярных выражений предоставляется пакетом библиотеки PCRE, который является открытым ресурсом, автор Philip Hazel, и copyright University of Cambridge, England. Он находится на ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

Установка

Начиная с PHP 4.2.0, эти функции по умолчанию включены. В более старых версиях вы должны конфигурировать и компилировать PHP с опцией --with-pcre-regex[=DIR], чтобы использовать эти функции. Вы можете отменить функции pcre опцией --without-pcre-regex.

Конфигурация

Это расширение не определяет никаких директив конфигурации.

Типы ресурсов

Это расширение не определяет никакие типы ресурсов.

Предопределённые константы

Таблица 1. PREG-константы
константаописание
PREG_PATTERN_ORDERОформляет результат таким образом, что $matches[0] является массивом совпадений всего патэрна, $matches[1] это массив строк, совпавших с первым субпатэрном в кавычках, и так далее. Этот флаг используется только с preg_match_all().
PREG_SET_ORDER Оформляет результат таким образом, что $matches[0] это массив первого набора совпадений, $matches[1] это массив второго набора совпадений, и так далее. Этот флаг используется только с preg_match_all().
PREG_OFFSET_CAPTUREСм. описание PREG_SPLIT_OFFSET_CAPTURE. Этот флаг доступен, начиная с PHP 4.3.0.
PREG_SPLIT_NO_EMPTY Этот флаг говорит функции preg_split() - возвращать только непустые участки.
PREG_SPLIT_DELIM_CAPTUREЭтот флаг говорит функции preg_split() - захватывать выражение в скобках также в патэрне ограничителе. Этот флаг доступен, начиная с PHP 4.0.5.
PREG_SPLIT_OFFSET_CAPTUREЕсли этот флаг установлен, для каждого возникающего совпадения будет возвращаться также смещение прибавляемой строки. Обратите внимание, что это изменяет return-значение в массиве, где элемент является массивом, состоящим из совпавшей строки со смещением 0  и смещения его строки в субъекте со смещением 1. Этот флаг доступен, начиная с PHP 4.3.0, и используется только для preg_split().

Примеры

Пример 1. Примеры верных патэрнов
  • /<\/\w+>/

  • |(\d{3})-\d+|Sm

  • /^(?i)php[34]/

  • {^\s+(\s+)?$}

Пример 2. Примеры неправильных патэрнов
  • /href='(.*)' - отсутствует конечный ограничитель

  • /\w+\s*\w+/J - неизвестный модификатор 'J'

  • 1-\d3-\d3-\d4| - пропущен начальный ограничитель

Содержание
Модификаторы Патэрна - описаны возможные модификаторы в regex-патэрнах
Синтаксис Патэрна - описан синтаксис PCRE regex
preg_grep - возвращает вхождения массива, совпадающие с патэрном
preg_match_all - выполняет глобальный поиск совпадений регулярного выражения
preg_match - выполняет поиск совпадений регулярного выражения
preg_quote - закавычивает символы регулярного выражения
preg_replace_callback - выполняет поиск регулярного выражения и замену с использованием обратного вызова/callback
preg_replace - выполняет поиск регулярного выражения и замену
preg_split - делит строку регулярным выражением

НазадОглавление Вперёд
recodeВверх Модификаторы патэрна