downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Our source is open

The syntax highlighted source is automatically generated by PHP from the plaintext script. If you're interested in what's behind the several functions we used, you can always take a look at the source of the following files:

Of course, if you want to see the source of this page, we have it available. You can also browse the SVN repository for this website on svn.php.net.

Source of: /manual/en/regexp.reference.meta.php

<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$PARENTS = array();
include_once
dirname(__FILE__) ."/toc/reference.pcre.pattern.syntax.inc";
$setup = array (
 
'home' =>
  array (
   
0 => 'index.php',
   
1 => 'PHP Manual',
  ),
 
'head' =>
  array (
   
0 => 'UTF-8',
   
1 => 'en',
  ),
 
'this' =>
  array (
   
0 => 'regexp.reference.meta.php',
   
1 => 'Meta-characters',
  ),
 
'up' =>
  array (
   
0 => 'reference.pcre.pattern.syntax.php',
   
1 => 'Pattern Syntax',
  ),
 
'prev' =>
  array (
   
0 => 'regexp.introduction.php',
   
1 => 'Introduction',
  ),
 
'next' =>
  array (
   
0 => 'regexp.reference.backslash.php',
   
1 => 'Backslash',
  ),
);
$setup["toc"] = $TOC;
$setup["parents"] = $PARENTS;
manual_setup($setup);

manual_header();
?>
<div id="regexp.reference.meta" class="section">
     <h2 class="title">Meta-characters</h2>
     <p class="para">    
      The  power  of  regular  expressions comes from the
      ability to include alternatives and repetitions in the
      pattern.  These  are encoded in the pattern by the use of
      <em class="emphasis">meta-characters</em>, which do not stand for  themselves  but  instead
      are interpreted in some special way.
     </p>
     <p class="para">
      There are two different sets of meta-characters: those  that
      are  recognized anywhere in the pattern except within square
      brackets, and those that are recognized in square brackets.
      Outside square brackets, the meta-characters are as follows:
      </p><dl>

       <dt class="varlistentry">

        <span class="term"><em class="emphasis">\</em></span>

        </dt><dd class="listitem">
<span class="simpara">general escape character with several uses</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">^</em></span>

        </dt><dd class="listitem">
<span class="simpara">assert start of subject (or line, in multiline mode)</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">$</em></span>

        </dt><dd class="listitem">
<span class="simpara">assert end of subject (or line, in multiline mode)</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">.</em></span>

        </dt><dd class="listitem">
<span class="simpara">match any character except newline (by default)</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">[</em></span>

        </dt><dd class="listitem">
<span class="simpara">start character class definition</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">]</em></span>

        </dt><dd class="listitem">
<span class="simpara">end character class definition</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">|</em></span>

        </dt><dd class="listitem">
<span class="simpara">start of alternative branch</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">(</em></span>

        </dt><dd class="listitem">
<span class="simpara">start subpattern</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">)</em></span>

        </dt><dd class="listitem">
<span class="simpara">end subpattern</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">?</em></span>

        </dt><dd class="listitem">
<span class="simpara">extends the meaning of (, also 0 or 1 quantifier, also quantifier minimizer</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">*</em></span>

        </dt><dd class="listitem">
<span class="simpara">0 or more quantifier</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">+</em></span>

        </dt><dd class="listitem">
<span class="simpara">1 or more quantifier</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">{</em></span>

        </dt><dd class="listitem">
<span class="simpara">start min/max quantifier</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">}</em></span>

        </dt><dd class="listitem">
<span class="simpara">end min/max quantifier</span></dd>

      
      </dl>
<p>

      Part of a pattern that is in square brackets is called a
      &quot;character class&quot;. In a character class the only
      meta-characters are:

      </p><dl>

       <dt class="varlistentry">

        <span class="term"><em class="emphasis">\</em></span>

        </dt><dd class="listitem">
<span class="simpara">general escape character</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">^</em></span>

        </dt><dd class="listitem">
<span class="simpara">negate the class, but only if the first character</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">-</em></span>

        </dt><dd class="listitem">
<span class="simpara">indicates character range</span></dd>

      
       <dt class="varlistentry">

        <span class="term"><em class="emphasis">]</em></span>

        </dt><dd class="listitem">
<span class="simpara">terminates the character class</span></dd>

      
      </dl>
<p>

      The following sections describe the use of each of the
      meta-characters.
     </p>
    </div><?php manual_footer(); ?>
 
show source | credits | sitemap | contact | advertising | mirror sites