MDN may have intermittent access issues April 18 13:00 - April 19 01:00 UTC. See whistlepig.mozilla.org for all notifications.

mozilla
Los resultados de tu búsqueda

    Ejemplos de expresiones regulares

     

    Ejemplos

    Los siguientes ejemplos muestran algunos usos de expresiones regulares.

    Cambiando el orden en una cadena de Entrada

    El siguiente ejemplo ilustra la formación de una expresión regular y el uso de string.split() y string.replace(). Esta corrige una cadena de entrada que está formateada irregularmente y que contiene nombres (nombre apellido) separados exactamente por espacios en blanco, tabulados y un punto y coma. Finalmente, esta reversa el orden de los nombres (apellido nombre) y ordena la lista.

    <script type="text/javascript">
    
    // La cadena nombres contiene múltiples espacios y tabulados,
    // y puede tener espacios entre nombres y apellidos.
    var nombres = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ; Chris Hand ";
    
    var salida = new Array(
      "---------- Cadena original <br><br>",
      nombres + "<br><br>");
    
    // Prepara dos patrones de expresiones regulares y un arreglo para almacenamiento.
    // Separa la cadena en elementos de un arreglo.
    
    // patrón: posibles espacios en blanco (\s*), luego un punto y coma (;), luego posibles espacios en blanco (\s*)
    var patron = /\s*;\s*/;
    
    // Divide la cadena en piezas separadas por el patrón anterior y
    // almacena las piezas en un arreglo llamado Listanombres
    var Listanombres = nombres.split(patron);
    
    // nuevo patrón: uno o más caracteres luego espacios luego caracteres.
    // Utilice paréntesis para "memorizar" porciones del patrón.
    // Las porciones memorizadas son referidas más tarde.
    var patron = /(\w+)\s+(\w+)/; //la variable patron ahora es actualizada con el nuevo patrón
    
    // Nuevo arreglo para mantener los nombres que son procesados.
    var ListaSorteadaPorNombres = new Array();
    
    // Despliega el arreglo de nombres y publica el nuevo arreglo
    // con nombres separados por coma, por apellidos.
    //
    // El método replace remueve cualquier cosa que coincida con el patrón
    // y la reemplaza con las segundas porciones memorizadas de la cadena memorizada
    // seguidos por una coma, espacio seguido por la primera porción memorizada.
    //
    // Las variables $1 y $2 se refieren a las porciones
    // memorizadas mientras coteja con el patrón.
    
    salida.push("---------- Despues de dividir por una expresión regular<br>");
    
    var i, longitud;
    for (i = 0, longitud = Listanombres.length; i < longitud; i++)
    {
      salida.push(Listanombres[i] + "<br>");
      ListaSorteadaPorNombres[i] = Listanombres[i].replace(patron, "$2, $1")
    }
    
    // Despliegue del nuevo arreglo.
    salida.push("---------- Nombres reversados<br>");
    for (i = 0, longitud = ListaSorteadaPorNombres.length; i < longitud; i++)
    {
      salida.push(ListaSorteadaPorNombres[i] + "<br>")
    }
    
    // ordenar por apellido, luego desplegar el arreglo ordenado.
    ListaSorteadaPorNombres.sort();
    salida.push("---------- Ordenada<br>");
    for (i = 0, longitud = ListaSorteadaPorNombres.length; i < longitud; i++)
    {
      salida.push(ListaSorteadaPorNombres[i] + "<br>")
    }
    
    salida.push("---------- Fin<br>");
    
    document.write(salida.join("\n"));
    
    </script>
    

    Utilizando Caracteres Especiales para Verificar Entradas

    En el siguiente ejemplo, un usuario ingresa un número telefónico. Cuando el usuario presiona Enter, el script chequea la validez del número. Si el número es válido (coincide con la secuencia de caracteres especificados por la expresión regular), el scrip despliega una ventana de agradecimiento al usuario agradeciéndolo y confirmando su número. Si el número es inválido, el script despliega una ventana informando al usuario que el número telefónico no es válido.

    La expresión regular busca por cero o un paréntesis \(?, seguido por tres dígitos \d{3}, seguido por cero o ningún paréntesis cerrado \)?, seguido por un guión, un slash, o punto decimal y cuando lo encuentra, recuerda el caracter -\\/\\., seguido por tres dígitos \d{3}, seguido por las coincidencias memorizadas de un guión, slash, o punto decimal \1, seguido de cuatro dígitos \d{4}.

    El evento Change activado cuando el usuario presiona Enter configura el valor de RegExp.input.

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
      "http://www.w3.org/TR/html4/loose.dtd">
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <meta http-equiv="Content-Script-Type" content="text/javascript">
        <script type="text/javascript">
          var re = /\(?\d{3}\)?([-\/\.])\d{3}\1\d{4}/;
    
          function probarInformación(Entrada_teléfono)
          {
            var OK = re.exec(Entrada_teléfono.value);
    
            if (!OK)
            {
              window.alert(RegExp.input + " es un número de teléfono sin código de área!");
            }
            else
            {
              window.alert("Gracias, su número telefónico es " + OK[0]);
            }
          }
        </script>
      </head>
    
      <body>
        <p>Ingrese su número telefónico (con código de área) y luego presione Enter.</p>
        <form action="">
          <input name="teléfono" onchange="probarInformación(this);">
        </form>
      </body>
    </html>
    

     

    Etiquetas y colaboradores del documento

    Contributors to this page: DSN XP, teoli, Mgjbot
    Última actualización por: teoli,