   #PHP Manual Function Reference recode Pattern Modifiers

   PHP Manual
   Prev  Next
   ______________________________________________________________________

XC. Regular Expression Functions (Perl-Compatible)

Introduction

   The syntax for patterns used in these functions closely resembles
   Perl. The expression should be enclosed in the delimiters, a forward
   slash (/), for example. Any character can be used for delimiter as
   long as it's not alphanumeric or backslash (\). If the delimiter
   character has to be used in the expression itself, it needs to be
   escaped by backslash. Since PHP 4.0.4, you can also use Perl-style (),
   {}, [], and <> matching delimiters.

   The ending delimiter may be followed by various modifiers that affect
   the matching. See Pattern Modifiers.

   PHP also supports regular expressions using a POSIX-extended syntax
   using the POSIX-extended regex functions..

Requirements

   Regular expression support is provided by the PCRE library package,
   which is open source software, written by Philip Hazel, and copyright
   by the University of Cambridge, England. It is available at
   ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/.

Installation

   Beginning with PHP 4.2.0 these functions are enabled by default. You
   can disable the pcre functions with --without-pcre-regex. Use
   --with-pcre-regex=DIR to specify DIR where PCRE's include and library
   files are located, if not using bundled library. For older versions
   you have to configure and compile PHP with --with-pcre-regex[=DIR] in
   order to use these functions.

   The windows version of PHP has built in support for this extension.
   You do not need to load any additional extension in order to use these
   functions.

Runtime Configuration

   This extension has no configuration directives defined in php.ini.

Resource Types

   This extension has no resource types defined.

Predefined Constants

   The constants below are defined by this extension, and will only be
   available when the extension has either been compiled into PHP or
   dynamically loaded at runtime.

   Table 1. PREG constants
   constant description
   PREG_PATTERN_ORDER Orders results so that $matches[0] is an array of
   full pattern matches, $matches[1] is an array of strings matched by
   the first parenthesized subpattern, and so on. This flag is only used
   with preg_match_all().
   PREG_SET_ORDER Orders results so that $matches[0] is an array of first
   set of matches, $matches[1] is an array of second set of matches, and
   so on. This flag is only used with preg_match_all().
   PREG_OFFSET_CAPTURE See the description of PREG_SPLIT_OFFSET_CAPTURE.
   This flag is available since PHP 4.3.0.
   PREG_SPLIT_NO_EMPTY This flag tells preg_split() to return only
   non-empty pieces.
   PREG_SPLIT_DELIM_CAPTURE This flag tells preg_split() to capture
   parenthesized expression in the delimiter pattern as well. This flag
   is available since PHP 4.0.5.
   PREG_SPLIT_OFFSET_CAPTURE If this flag is set, for every occurring
   match the appendant string offset will also be returned. Note that
   this changes the return value in an array where very element is an
   array consisting of the matched string at offset 0 and it's string
   offset into subject at offset 1. This flag is available since PHP
   4.3.0 and is only used for preg_split().

Examples

   Example 1. Examples of valid patterns

     * /<\/\w+>/
     * |(\d{3})-\d+|Sm
     * /^(?i)php[34]/
     * {^\s+(\s+)?$}

   Example 2. Examples of invalid patterns

     * /href='(.*)' - missing ending delimiter
     * /\w+\s*\w+/J - unknown modifier 'J'
     * 1-\d3-\d3-\d4| - missing starting delimiter

   Table of Contents
   Pattern Modifiers -- Describes possible modifiers in regex patterns
   Pattern Syntax -- Describes PCRE regex syntax
   preg_grep --  Return array entries that match the pattern
   preg_match_all -- Perform a global regular expression match
   preg_match -- Perform a regular expression match
   preg_quote -- Quote regular expression characters
   preg_replace_callback -- Perform a regular expression search and
          replace using a callback

   preg_replace -- Perform a regular expression search and replace
   preg_split -- Split string by a regular expression
   ______________________________________________________________________

   Prev   Home              Next
   recode  Up  Pattern Modifiers
