<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = 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 => 'es',
  ),
  'this' => 
  array (
    0 => 'regexp.reference.meta.php',
    1 => 'Metacaracteres',
    2 => 'Metacaracteres',
  ),
  'up' => 
  array (
    0 => 'reference.pcre.pattern.syntax.php',
    1 => 'Sintaxis de expresiones regulares PCRE',
  ),
  'prev' => 
  array (
    0 => 'regexp.reference.delimiters.php',
    1 => 'Delimitadores',
  ),
  'next' => 
  array (
    0 => 'regexp.reference.escape.php',
    1 => 'Secuencias de escape',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/pcre/pattern.syntax.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="regexp.reference.meta" class="section">
  <h2 class="title">Metacaracteres</h2>
  <p class="para">
   El poder de las expresiones regulares proviene de la
   capacidad de incluir alternativas y repeticiones en el
   patrón. Estas se codifican en el patrón mediante el uso de
   <em>metacaracteres</em>, que no se representan a sí mismos, sino que se interpretan de alguna manera especial.
  </p>
  <p class="para">
   Hay dos conjuntos diferentes de metacaracteres: aquellos que
   se reconocen en cualquier parte del patrón excepto dentro de corchetes, y aquellos que se reconocen dentro de corchetes.
   Fuera de corchetes, los metacaracteres son los siguientes:

   <table class="doctable table">
     <caption><strong>Metacaracteres fuera de corchetes</strong></caption>
    
     <thead>
      <tr>
       <th>Metacaracter</th><th>Descripción</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>\</td><td>carácter de escape general con varios usos</td>
      </tr>

      <tr>
       <td>^</td><td>asegurar el inicio del sujeto (o línea, en modo multiline)</td>
      </tr>

      <tr>
       <td>$</td><td>asegurar el final del sujeto o antes de un salto de línea de terminación (o final de línea, en modo multiline)</td>
      </tr>

      <tr>
       <td>.</td><td>coincidir con cualquier carácter excepto salto de línea (por defecto)</td>
      </tr>

      <tr>
       <td>[</td><td>inicio de definición de clase de caracteres</td>
      </tr>

      <tr>
       <td>]</td><td>fin de definición de clase de caracteres</td>
      </tr>

      <tr>
       <td>|</td><td>inicio de rama alternativa</td>
      </tr>

      <tr>
       <td>(</td><td>inicio de subpatrón</td>
      </tr>

      <tr>
       <td>)</td><td>fin de subpatrón</td>
      </tr>

      <tr>
       <td>?</td><td>extiende el significado de (, también 0 o 1 cuantificador, también hace que los cuantificadores codiciosos sean perezosos (ver <a href="regexp.reference.repetition.php" class="link">repetición</a>)</td>
      </tr>

      <tr>
       <td>*</td><td>cuantificador 0 o más</td>
      </tr>

      <tr>
       <td>+</td><td>cuantificador 1 o más</td>
      </tr>

      <tr>
       <td>{</td><td>inicio de cuantificador min/max</td>
      </tr>

      <tr>
       <td>}</td><td>fin de cuantificador min/max</td>
      </tr>

     </tbody>
    
   </table>


   Una parte de un patrón que está dentro de corchetes se llama
   <a href="regexp.reference.character-classes.php" class="link">clase de caracteres</a>. En una clase de caracteres los únicos
   metacaracteres son:

   <table class="doctable table">
     <caption><strong>Metacaracteres dentro de corchetes (<em>clases de caracteres</em>)</strong></caption>
    
     <thead>
      <tr>
       <th>Metacaracter</th><th>Descripción</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>\</td><td>carácter de escape general</td>
      </tr>

      <tr>
       <td>^</td><td>niega la clase, pero solo si es el primer carácter</td>
      </tr>

      <tr>
       <td>-</td><td>indica rango de caracteres</td>
      </tr>

     </tbody>
    
   </table>


   Las siguientes secciones describen el uso de cada uno de los
   metacaracteres.
  </p>
 </div><?php manual_footer($setup); ?>