<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
 <!ENTITY % Spanish "INCLUDE">
 <!ENTITY % addindex "IGNORE">
]>

<book lang="&language;">

  <bookinfo>
    <title
>El manual del editor de expresiones regulares</title>

    <authorgroup>
      <author
> <firstname
>Jesper K.</firstname
> <surname
>Pedersen</surname
> <affiliation
><address
><email
>blackie@kde.org</email
></address
></affiliation
> </author>
    </authorgroup>

    <date
>2001-07-03</date>
    <releaseinfo
>0.1</releaseinfo>

    <legalnotice
>&underFDL;</legalnotice>

    <copyright>
      <year
>2001</year>
      <holder
>Jesper K. Pedersen</holder>
    </copyright>

    <abstract>
      <para
>Este manual describe el control del editor de expresiones regulares</para>
    </abstract>

    <keywordset>
      <keyword
>KDE</keyword>
      <keyword
>expresión regular</keyword>
    </keywordset>
  </bookinfo>

  <!-- ====================================================================== -->
  <!--                               Introduction                             -->
  <!-- ====================================================================== -->
  <chapter id="introduction">
    <title
>Introducción</title>


    <para
> El editor de expresiones regulares es un editor para editar expresiones regulares en un estilo gráfico (en contraste a la sintaxis ASCII). Tradicionalmente, las expresiones regulares han sido escritas con la sintaxis ASCII, que, por ejemplo, quedaría como <literal
>^.*kde\b</literal
>. El mayor inconveniente de este estilo es: <itemizedlist
> <listitem
><para
>Es difícil de entender para los que no sean programadores.</para
></listitem
> <listitem
><para
>Requiere del uso de secuencias de <emphasis
>escape</emphasis
> para ciertos símbolos (para que coincida con una estrella, por ejemplo, se necesitaría escribir: <literal
>\*</literal
>). </para
></listitem
> <listitem
><para
>Requiere que recuerde reglas para la <emphasis
>precedencia</emphasis
> (¿Qué representaría <literal
>x|y*</literal
>? Una única <literal
>x</literal
> o cualquier número de <literal
>y</literal
>, <emphasis
>O</emphasis
> cualquier número de <literal
>x</literal
> e <literal
>y</literal
> mezcladas?).</para
></listitem
> </itemizedlist
> </para>

    <para
> Por otro lado, el editor de expresiones regulares le permite <emphasis
>dibujar</emphasis
> su expresión regular sin ambigüedades. El editor resuelve al menos elementos dos ó tres veces por encima. No puede hacer las expresiones regulares disponibles para los que no son programadores, ya que sólo las pruebas de los usuarios pueden decirle esto. Así, si no es un programador y ha alcanzado el dominio de las expresiones regulares desde este editor, por favor hágamelo <ulink url="mailto:blackie@kde.org"
>saber</ulink
>. </para>

  </chapter>

  <!-- ====================================================================== -->
  <!--                       What is a Regular Expression                     -->
  <!-- ====================================================================== -->
  <chapter id="whatIsARegExp">
    <title
>¿Qué es una expresión regular?</title>

    <para
>Una expresión regular es una forma de especificar <emphasis
>condiciones</emphasis
> para hacerlas coincidir con las que tiene en mente. Normalmente, cuando busca en un editor de texto, especifica el texto para buscar <emphasis
>literalmente</emphasis
>; por otro lado, al usar expresiones regulares, puede decirle que se busque un patrón determinado dado. Ejemplos de estas búsquedas son <emphasis
>Estoy buscando la palabra KDE, pero sólo al principio de la línea</emphasis
> o <emphasis
>Estoy buscando la palabra <literal
>el</literal
>, pero debe aparecer sola -no en medio de una palabra-</emphasis
> o <emphasis
>Estoy buscando archivos que empiecen con la palabra <literal
>prueba</literal
>, seguido por un número de dígitos, por ejemplo <literal
>prueba12</literal
>, <literal
>prueba107</literal
> y <literal
>prueba007</literal
></emphasis
></para
> 

    <para
>Puede construir expresiones regulares a partir de expresiones regulares más pequeñas, tal y como se construyen juguetes Lego grandes desde partes pequeñas. Como en el mundo de Lego, hay un número de bloques de construcción básicos. En lo sucesivo, describiré cada uno de estos bloques de construcción básicos usando ejemplos.</para>

    <example
> <title
>Buscando un texto normal.</title
> <para
>Si simplemente quiere buscar un texto dado, la expresión regular no es una buena elección. El motivo de esto es que las expresiones regulares asignan significado especial a algunos caracteres. Esto incluye los siguientes caracteres: <literal
>.*|$</literal
>. Por tanto, si quiere buscar el texto <literal
>kde.</literal
> (esto es, los caracteres <literal
>kde</literal
> seguidos por un punto), necesita especificar esto como<literal
>kde\.</literal
><footnote
><para
>El editor de expresiones regulares soluciona este problema tomando en cuenta las reglas de escape por usted.</para
></footnote
> Escribir <literal
>\.</literal
> en lugar de<literal
>.</literal
> se llama <emphasis
>escapar</emphasis
>. </para
> </example>

    <example id="positionregexp"
> <title
>Coincidencia de URLs</title
> <para
>Cuando seleccione algo que se parezca a una URL en KDE, el programa <command
>klipper</command
> le ofrecerá iniciar <command
>konqueror</command
> con la URL seleccionada.</para
> <para
><command
>Klipper</command
> hace esto haciendo coincidir la selección con varias expresiones regulares. Cuando una de las expresiones regulares coincide, el comando que se amolde a ella se le ofrecerá.</para
> <para
>La expresión regular para URLs dice (entre otras cosas), que la selección debe comenzar con el texto <literal
>http://</literal
>. Esto se describe usando expresiones regulares que preceden al texto <literal
>http://</literal
> con un gorro (el carácter <literal
>^</literal
>).</para
> <para
>El ejemplo de arriba es un ejemplo de coincidencia con posiciones usando expresiones regulares. De forma similar, la posición <emphasis
>fin-de-línea</emphasis
> se puede hacer coincidir usando el carácter <literal
>$</literal
> (esto es, un símbolo de dólar).</para
> </example>

    <example id="boundaryregexp"
> <title
>Buscar la palabra <literal
>el</literal
>, pero no en <emphasis
>el</emphasis
><literal
>la</literal
>, <literal
>aqu</literal
><emphasis
>el</emphasis
> ni <literal
>s</literal
><emphasis
>el</emphasis
><literal
>lo</literal
></title
> <para
>Se pueden hacer coincidir dos tipos de posición extra en la forma de arriba, llamadas <emphasis
>la posición del límite de la palabra</emphasis
> y <emphasis
>posición <emphasis
>no</emphasis
> del límite de la palabra</emphasis
>. Las posiciones se especifican usando el texto <literal
>\b</literal
> (para límite de palabra) u <literal
>\B</literal
> (para no límite de palabra)<emphasis
></emphasis
></para
> <para
>Por tanto, la búsqueda de la palabra <literal
>el</literal
> se puede hacer usando la expresión regular <literal
>\bel\b</literal
>. Esto especifica que se está buscando <literal
>el</literal
> sin letras a los lados (esto es, sin una palabra limítrofe a cada lado)</para
> <para
>Las cuatro posiciones que coinciden con expresiones regulares se insertan en el editor de expresiones regulares usando <link linkend="positiontool"
>cuatro herramientas de posición diferentes</link
></para
> </example>

    <example id="altnregexp"
> <title
>Buscar cada <literal
>este</literal
> o <literal
>ese</literal
></title
> <para
>Imagine que quiere recorrer su documento en busca de la palabra <literal
>este</literal
> o la palabra <literal
>ese</literal
>. Con un método de búsqueda normal puede hacerlo en dos barridas: en la primera, buscaría <literal
>este</literal
>; y en la segunda buscaría <literal
>ese</literal
>.</para
> <para
>Al usar expresiones regulares, puede buscar ambos en la misma barrida. Puede hacer esto buscando <literal
>este|ese</literal
>. Esto es, separando las dos palabras con una barra vertical.<footnote
><para
>Fíjese en que a cada lado de la barra vertical hay una expresión regular, por tanto esta característica no es sólo para buscar dos o más partes de texto, sino para buscar dos expresiones regulares diferentes.</para
></footnote
></para
> <para
>En el editor de expresiones regulares, no escriba la barra vertical por sí mismo, seleccione en su lugar la <link linkend="altntool"
>herramienta alternativa</link
>, e inserte las dos expresiones regulares una sobre otra.</para
> </example>

    <example id="repeatregexp"
> <title
>Coincidir con cualquier cosa</title
> <para
>Las expresiones regulares se suelen comparar con la coincidencia con comodines en el shell - esta es la capacidad de especificar un número de archivos usando el asterisco. Seguramente reconozca los comodines para coincidencias de los siguientes ejemplos: <itemizedlist
> <listitem
><para
><literal
>rm *~</literal
> - here <literal
>*~</literal
> es el comodín de la shell para hacer coincidir con cada archivo que coincida con <literal
>~</literal
></para
></listitem
> <listitem
><para
>cat test??.res - coincide con cada archivo que comience con <literal
>test</literal
> seguido de dos caracteres cualesquiera, y seguido finalmente con la prueba <literal
>.res</literal
></para
></listitem
> </itemizedlist
> </para
> <para
>En la shell, el asterisco coincide con cualquier carácter cualquier número de veces. En otras palabras, el asterisco coincide con <emphasis
>cualquier cosa</emphasis
>. Esto se escribe como <literal
>.*</literal
> en la sintaxis de las expresiones regulares. El punto coincide con cualquier carácter solo, esto es,<emphasis
>un</emphasis
> carácter, y el asterisco le dice a la expresión regular que lo que haya antes de él puede coincidir cualquier número de veces. En conjunto, esto dice cualquier carácter solo cualquier número de veces.</para
> <para
>Esto puede parecer demasiado complicado, pero cuando tenga una perspectiva más lejana, verá el poder. Déjeme mostrarle otra expresión regular básica: <literal
>a</literal
>. La letra <literal
>a</literal
> por sí misma es una expresión regular que coincide con una sola letra, llamémosla la letra <literal
>a</literal
>. Si combinamos esto con el asterisco, esto es <literal
>a*</literal
>, entonces tenemos una expresión regular que coincide con cualquier número de aes.</para
> <para
>Podemos combinar varias expresiones regulares tras cada otra, por ejemplo <literal
>ba(na)*</literal
>. <footnote
><para
><literal
>(na)*</literal
> sólo dice que lo que está dentro del paréntesis se repite cualquier número de veces.</para
></footnote
> Imagine que ha tecleado esta expresión regular en un editor de texto, entonces debe encontrar las siguientes palabras (entre otras): <literal
>ba</literal
>, <literal
>bana</literal
>, <literal
>banana</literal
>, <literal
>bananananananana</literal
> </para
> <para
>Dada la información de arriba, espero que no le sea duro escribir los comodines de la shell <literal
>test??.res</literal
> como una expresión regular. Respuesta: <literal
>test..\.res</literal
>. El punto por sí mismo es cualquier carácter. Para coincidir con un sólo punto puede escribir <literal
>\.</literal
><footnote
><para
>Esto se llama escapar</para
></footnote
>. En otras palabras, la expresión regular <literal
>\.</literal
> coincide con un punto, mientras que el punto por sí mismo coincide con cualquier carácter. </para
> <para
>En el editor de expresiones regulares, cada expresión regular repetida se crea usando la <link linkend="repeattool"
>herramienta repetir</link
> </para
> </example>

    <example id="lookaheadregexp"
> <title
>Reemplar <literal
>&amp;</literal
> con <literal
>&amp;amb;</literal
> en un documento HTML.</title
> <para
>En HTML, el carácter especial <literal
>&amp;</literal
> se debe escribir como <literal
>&amp;amp;</literal
> - esto es similar a escapar en la expresión regular.</para
> <para
>Imagine que ha escrito un documento HTML en un editor normal (por ejemplo, XEmacs or Kate), y olvidó completamente esta regla. Qué haría cuando se diera cuenta de su error al reemplazar cada ocurrencia de <literal
>&amp;</literal
> con <literal
>&amp;amp;</literal
>.</para
> <para
>Esto se puede hacer fácilmente usando buscar y reemplazar texto normal, pero esto es algo tedioso. Imagine que recordaba esta regla - <emphasis
>sólo un poco</emphasis
> - y no lo hizo bien en algunas posiciones. El reemplazo incondicional haría que <literal
>&amp;amp;</literal
> se reemplazara con <literal
>&amp;amp;amp;</literal
></para
> <para
>Lo que verdaderamente quiere decir es que <literal
>&amp;</literal
> sólo se debe reemplazar si <emphasis
>no</emphasis
> está seguido por las letras <literal
>amp;</literal
>. Puede hacer esto usando expresiones regulares con la <emphasis
>búsqueda positiva</emphasis
>. </para
> <para
>La expresión regular, que sólo coincide con un subrayado si no está seguida por las letras <literal
>amp;</literal
> aparece así: <literal
>&amp;(?!amp;)</literal
>. Esto es, por supuesto, más fácil de leer usando el editor de expresiones regulares, donde debe usar las <link linkend="lookaheadtools"
>herramientas de búsqueda</link
>.</para
> </example>

  </chapter>

  <!-- ====================================================================== -->
  <!--                    Using the Regular Expresion Editor                  -->
  <!-- ====================================================================== -->
  <chapter id="theEditor">
    <title
>Usando el editor de expresiones regulares</title>

    <para
> Este capítulo le dirá cómo funciona el editor de expresiones regulares. </para>

    <!-- ====================================================================== -->
    <!--                   The organization of the screen                       -->
    <!-- ====================================================================== -->
    <sect1 id="screenorganization">
      <title
>La organización de la pantalla</title>

      <mediaobject>
        <imageobject
><imagedata format="PNG" fileref="theEditor.png"/></imageobject>
      </mediaobject>
      
      <para
>La parte más importante del editor es, por supuesto, el área de edición. Esta es el área donde dibuja sus expresiones regulares. Este área es el área gris más grande del medio.</para>

      <para
>Sobre el área de edición tiene dos barras de herramientas, la primera contiene las <link linkend="editingtools"
>acciones de edición</link
> - como las herramientas de dibujo en un programa de dibujo. La segunda barra de herramientas contiene el botón <emphasis
>qué es esto</emphasis
>, y los botones para deshacer y rehacer.</para>

      <para
></para>

      <para
>Bajo el área de edición encontrará la expresión regular construída actualmente, en la también llamada sintaxis ascii. La sintaxis ascii se actualiza mientras está editando la expresión regular en el editor gráfico. Si en vez de esto quiere actualizar la sintaxis ascii, hágalo, por favor. El editor gráfico se actualiza al vuelo para reflejar sus cambios.</para>

      <para
>Finalmente, a la izquierda del área del editor encontrará un número de expresiones regulares prefabricadas. Sirven para dos propósitos: (1) Cuando cargue el editor con una expresión regular, esta expresión regular se hace de forma <emphasis
>más fácil</emphasis
> o más comprensible al reemplazar las expresiones regulares comunes. En la captura de pantalla de arriba, puede ver cómo la sintaxis ascii ".*" se ha reemplazado por una caja que dice "cualquier cosa". (2) Cuando inserta una expresión regular, puede encontrar bloques de construcción para sus propias expresiones regulares en el juego de expresiones regulares prehechas. Vea la sección sobre <link linkend="userdefinedregexps"
>expresiones regulares definidas por el usuario</link
> para aprender cómo guardar sus propias expresiones regulares.</para
>      
    </sect1>

    <!-- ====================================================================== -->
    <!--                         Editing Tools                                  -->
    <!-- ====================================================================== -->
    <sect1 id="editingtools">
      <title
>Herramientas de edición</title>
      <para
>El texto de esta sección supone que ha leído el capítulo sobre <link linkend="whatIsARegExp"
>qué es una expresión regular</link
>, o que tiene un conocimiento previo de este asunto.</para>
      
      <para
>Todas las herramientas de edición se ubican en la barra de herramientas sobre el área de edición. Cada una de ellas se describe como sigue:</para>
      
      

      <simplesect id="selecttool">
        <title
>Herramienta selección <inlinemediaobject
> <imageobject
><imagedata format="PNG" fileref="select.png"/> </imageobject
></inlinemediaobject
></title>

        <para
> La herramienta de selección se usa para marcar elementos para copiar-y-pegar y arrastrar-y-soltar. Esto es muy similar a una herramienta de selección en cualquier programa de dibujo.</para>
      </simplesect>
        
      

      <simplesect id="texttool"
><title
>Herramienta texto <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="text.png"/> </imageobject
></inlinemediaobject
></title>

        <para
><inlinemediaobject
><imageobject>
              <imagedata format="PNG" fileref="texttool.png"/>
        </imageobject
></inlinemediaobject
></para>

        <para
></para>
      </simplesect>

      

      <simplesect id="characterstool"
><title
>Herramienta carácter <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="characters.png"/> </imageobject
></inlinemediaobject
></title>
      
        <para
><inlinemediaobject
><imageobject>
            <imagedata format="PNG" fileref="charactertool.png"/>
            </imageobject
></inlinemediaobject
></para>
        
        <para
> Usando esta herramienta, puede insertar rangos de caracteres. Los ejemplos incluyen lo que en texto ASCII dice <literal
>[0-9]</literal
>, <literal
>[^a-zA-Z,_]</literal
>. Al insertar un elemento con esta herramienta, aparecerá un diálogo en el que puede especificar los rangos de caracteres.</para>
        
        <para
>Vea la descripción de <link linkend="repeatregexp"
>expresiones regulares repetidas</link
>.</para>
      </simplesect>

      
      
      <simplesect id="anychartool"
><title
>Herramienta cualquier carácter <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="anychar.png"/> </imageobject
></inlinemediaobject
></title>
        
        <para
><inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="anychartool.png"/>
        </imageobject
></inlinemediaobject
></para>

        <para
>Esta es la expresión regular «punto» (.). Coincide con cualquier carácter solo.</para
> 
        
       
        
        </simplesect>



      <simplesect id="repeattool"
><title
>Herramienta repetir <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="repeat.png"/> </imageobject
></inlinemediaobject
></title>

        <para
><inlinemediaobject
><imageobject>
            <imagedata format="PNG" fileref="repeattool.png"/>
            </imageobject
></inlinemediaobject
></para>

        <para
>Esta es la de los elementos repetidos. Esto incluye lo que en sintaxis ASCII se representa usando un asterisco (*), un más (+), una interrogación (?) y rangos ({3,5}). Cuando inserte un elemento usando esta herramienta, aparecerá un diálogo pidiéndole el número de veces para repetir.</para>
          
          <para
>Especifique qué repetir dibujando el contenido a repetir dentro de la caja que inserta esta herramienta.</para>

          <para
>Los elementos repetidos se pueden construir tanto fuera como dentro. Por esto es por lo que dibuja primero lo que quiere repetir, lo selecciona y utiliza la herramienta repetir para repetirlo. También puede insertar primero el elemento repetir y dibujar dentro de él lo que se deba repetir.</para>

        <para
>Vea la descripción de <link linkend="repeatregexp"
>expresiones regulares repetidas</link
>.</para>
        </simplesect>




      <simplesect id="altntool"
><title
>Herramienta alternativa <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="altn.png"/> </imageobject
></inlinemediaobject
></title>

        <para
><inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="altntool.png"/>
        </imageobject
></inlinemediaobject
></para>
        
        <para
>Esta es la expresión regular alternativa (|). Debe especificar las alternativas dibujando cada alternativa encima de cada otra dentro de la caja que inserta esta herramienta.</para>

        <para
>Vea la descripción de <link linkend="altnregexp"
>expresiones regulares alternativas</link
></para>
      </simplesect>
      



      <simplesect id="compoundtool"
><title
>Herramienta componer <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="compound.png"/> </imageobject
></inlinemediaobject
></title>
        
        <para
><inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="compoundtool.png"/>
        </imageobject
></inlinemediaobject
></para>
        
        <para
>La herramienta componer no representa ninguna expresión regular. Se utiliza para agrupar otras subpartes en una caja, lo que se puede colapsar fácilmente para ser sólo su título. Esto se puede ver en la parte derecha de la captura de pantalla de arriba.</para>
      </simplesect>





      <simplesect id="positiontool"
><title
>Herramientas comienzo/fin de línea <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="begline.png"/> </imageobject
></inlinemediaobject
>&nbsp;&nbsp; <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="endline.png"/> </imageobject
></inlinemediaobject
></title>
        
        <para
><inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="linestartendtool.png"/>
        </imageobject
></inlinemediaobject
></para>

        <para
>Las herramientas de comienzo y fin de línea coinciden con el comienzo y el fin de la línea, respectivamente. La expresión regular de la captura de pantalla de arriba sólo debe coincidir con línea que sólo tienen espacios.</para>
        
        <para
>Vea la descripción de <link linkend="positionregexp"
>expresiones de posición regular</link
>.</para>
      </simplesect>





      <simplesect
><title
>Herramientas de (no) límite de palabra <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="wordboundary.png"/> </imageobject
></inlinemediaobject
>&nbsp;&nbsp; <inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="nonwordboundary.png"/> </imageobject
></inlinemediaobject
></title>

        <para
><inlinemediaobject
><imageobject
><imagedata format="PNG" fileref="boundarytools.png"/>
        </imageobject
></inlinemediaobject
></para>

        <para
>Las herramientas de límites coinciden respectivamente o no con un límite de palabra. La expresión regular de la captura de pantalla coincide con cualquier palabra que comience con <literal
>el</literal
>. La palabra <literal
>el</literal
> por sí misma, sin embargo, no coincide.</para>

        <para
>Vea la descripción de <link linkend="boundaryregexp"
>expresiones regulares de límites</link
>.</para>
      </simplesect>





      <simplesect id="lookaheadtools"
><title
>Herramientas de búsqueda positiva/negativa <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="poslookahead.png"/> </imageobject
></inlinemediaobject
>&nbsp;&nbsp; <inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="neglookahead.png"/> </imageobject
></inlinemediaobject
></title>

        <para
><inlinemediaobject
><imageobject
> <imagedata format="PNG" fileref="lookaheadtools.png"/>
        </imageobject
></inlinemediaobject
></para>

        <para
>Las herramientas de búsqueda especifican una expresión regular positiva o negativa para coincidir. La coincidencia, sin embargo, no es parte de la coincidencia total.</para>

        <para
>Nota: Sólo se le permite ubicar búsquedas al final de las expresiones regulares. El elemento del editor de expresiones regulares no fuerza esto.</para>

        <para
>Vea la descripción de <link linkend="lookaheadregexp"
>expresiones regulares de búsqueda</link
>.</para>
      </simplesect>
    </sect1>

  <!-- ====================================================================== -->
  <!--                  User Defined Regular Expressions                      -->
  <!-- ====================================================================== -->
    <sect1 id="userdefinedregexps">
      <title
>Expresiones regulares definidas por el usuario</title>
      <para
>A la izquierda del área de edición hay un cuadro de lista que contiene las expresiones regulares definidas por el usuario. Algunas expresiones regulares se preinstalan con su instalación de KDE, mientras que otras las puede guardar por sí mismo.</para
> 

      <para
>Estas expresiones regulares sirven para dos propósitos ( <link linkend="screenorganization"
>vea la descripción detallada</link
>), llamada (1) para ofrecerle un juego de bloques de construcción y (2) para hacer las expresiones regulares más bonitas.</para>

      <para
>Puede guardar sus propias expresiones regulares haciendo clic derecho con el botón del ratón en el área de edición y seleccionando <literal
>Guardar la expresión regular</literal
>.</para>

      <para
>Si la expresión regular que guarda tiene un <link linkend="compoundtool"
>contenedor compuesto</link
>, entonces la expresión regular tomará parte en hacer las subsiguientes expresiones regulares más bonitas.</para>

      <para
>Las expresiones regulares definidas por el usuario se pueden borrar o renombrar pulsando el botón derecho del ratón sobre la expresión regular en cuestión en el cuadro de lista.</para>
    </sect1>
  </chapter>

  <!-- ====================================================================== -->
  <!--                  Reporting a bug and Suggesting Features               -->
  <!-- ====================================================================== -->
  <chapter id="bugreport">
    <title
>Informando de errores y sugiriendo características</title>
    <para
>Los informes de virus se realizan a través del <ulink url="http://bugs.kde.org/"
>sistema de seguimiento de fallos de KDE</ulink
>. <emphasis role="strong"
>Antes</emphasis
> de que informe de un error o sugiera una característica, comprueba que nadie ha <ulink url="http://bugs.kde.org/db/pa/lkregexpeditor.html"
>informado/sugerido</ulink
> de ella con anterioridad</para>
  </chapter>

  <!-- ====================================================================== -->
  <!--                                 FAQ                                    -->
  <!-- ====================================================================== -->
  <chapter id="faq">
    <title
>Preguntas de usuario frecuentes</title>
    <sect1>
      <title
>¿Admite el editor de expresiones regulares referencias hacia atrás</title>
      <para
>No, por el momento no se admite. Está planificado para la siguiente versión.</para>
    </sect1>

    <sect1>
      <title
>¿Admite el editor de expresiones regulares la muestra de coincidencias?</title>
      <para
>No, pero con suerte estará disponible en la próxima versión</para>
    </sect1>

    <sect1>
      <title
>Soy el autor de un programa de KDE, ¿cómo puedo usar este elemento en mi aplicación?</title>
      <para
>vea <ulink url="http://developer.kde.org/documentation/library/cvs-api/classref/interfaces/KRegExpEditorInterface.html"
>la documentación para la clase KRegExpEditorInterface</ulink
></para>
    </sect1>

    <sect1>
      <title
>No puedo encontrar el botón <emphasis
>Editar expresión regular</emphasis
> por ejemplo, en konqueror en otra instalación de KDE3, ¿por qué?</title>
      <para
>El elemento de expresión regular se ubica en el paquete KDE-utils. Si no ha instalado este paquete, los botones de <emphasis
>editar expresiones regulares</emphasis
> no aparecerán en los programas.</para>
    </sect1>
  </chapter>

  <!-- ====================================================================== -->
  <!--                           Credits and Licenses                         -->
  <!-- ====================================================================== -->
  <chapter id="credits-and-license">
    <title
>Créditos y licencias</title>

    <para
> Copyright de la documentación 2001, Jesper K. Pedersen <email
>blackie@kde.org</email
> </para>


    &underGPL;
    &underFDL;

  </chapter>


</book>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
