Inicio › Herramientas para desarrolladores › Generador de regex

Generador de regex

Crea una expresión regular sin memorizar la sintaxis: apila bloques como dígitos, letras, texto exacto, conjuntos de caracteres y opciones alternativas, indica cuántas veces se repite cada uno o parte de una plantilla ya hecha. La regex, una descripción en lenguaje sencillo, una prueba en tiempo real y fragmentos de código se actualizan al instante.

Última actualización:

Empezar con una plantilla
Tu regex

Bloques del patrón

    Añadir un bloque

    En lenguaje sencillo

      
      

      Publicidad
      Publicidad

      Cómo usar Generador de regex

      1. Elige una plantilla como Email o Fecha, o empieza de cero con Borrar todo.
      2. Añade bloques desde la paleta: por ejemplo Dígitos, luego Texto exacto "-" y luego Dígitos otra vez.
      3. Indica cuántas veces se repite cada bloque (exactamente una vez, opcional, uno o más, exactamente N, de N a M) y marca capturar para guardar una parte como grupo.
      4. Elige las opciones: deja activado Coincidir con toda la entrada para validar, o desactívalo para buscar coincidencias dentro de un texto más largo; activa indicadores como ignorar mayúsculas.
      5. Prueba y copia: escribe líneas de ejemplo para ver cuáles coinciden y copia la regex o el código para tu lenguaje.

      Patrones de regex habituales

      UsoRegexCoincide con
      Email (práctico)^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$[email protected]
      Fecha AAAA-MM-DD^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$2026-10-20
      Hora 24 h^(?:[01]\d|2[0-3]):[0-5]\d$23:59
      Teléfono de EE. UU.^\(?\d{3}\)?[-. ]?\d{3}[-. ]?\d{4}$(555) 123-4567
      Teléfono E.164^\+[1-9]\d{1,14}$+14155552671
      ZIP de EE. UU.^\d{5}(?:-\d{4})?$94105-1234
      Color hex^#(?:[0-9a-f]{6}|[0-9a-f]{3})$ (con i)#2f6b4f, #fff
      Slug de URL^[a-z0-9]+(?:-[a-z0-9]+)*$my-first-post
      Número entero^-?\d+$-42
      Decimal^[-+]?\d+(?:\.\d+)?$3.14

      Validación frente a extracción

      Una regex que se usa para validar un único valor (un campo de formulario, un nombre de archivo, un ID) debe anclarse con ^ y $; si no, "abc123xyz" superaría una comprobación de solo dígitos porque contiene dígitos. Una regex que se usa para extraer valores de un texto más largo no debe anclarse a toda la entrada y normalmente necesita el indicador g para encontrar todas las apariciones. Los límites de palabra (\b) ayudan a evitar coincidencias dentro de palabras o números más largos.

      Las expresiones regulares comprueban la forma del texto, no su significado. Una regex de fecha puede rechazar el mes 13, pero comprobar que el 30 de febrero no existe, que un buzón de correo es real o que un número de tarjeta de crédito supera la comprobación de Luhn requiere código.

      Preguntas frecuentes

      ¿Cómo creo una regex sin conocer la sintaxis?

      Describe el texto como una secuencia de partes. Para un código de producto como AB-1234 añadirías Mayúsculas (exactamente 2), Texto exacto "-" y Dígitos (exactamente 4). El generador lo convierte en ^[A-Z]{2}-\d{4}$, escapa los caracteres especiales por ti y muestra cuáles de tus líneas de prueba coinciden.

      ¿Qué hace "Coincidir con toda la entrada"?

      Envuelve el patrón entre ^ y $ para que todo el valor tenga que coincidir, que es lo que quieres para validar campos de formulario. Desactívalo para buscar el patrón en cualquier parte de un texto más largo, por ejemplo para extraer todos los precios o hashtags de un párrafo.

      ¿La regex de email cumple por completo el RFC 5322?

      Ninguna regex que se pueda mantener lo cumple. La plantilla acepta las direcciones que se usan en la práctica (letras, dígitos, puntos, más, porcentaje, guion y guion bajo antes de la @, un dominio y un TLD de al menos dos letras) y rechaza los errores evidentes. Para asegurarte de que una dirección existe, envía un correo de confirmación.

      ¿Qué diferencia hay entre los grupos de captura y los de no captura?

      Un grupo de captura guarda el texto coincidente para que puedas leerlo después (match[1] o match.groups.name en JavaScript). El generador usa automáticamente grupos de no captura (?:…) cuando solo necesita paréntesis para aplicar un cuantificador, así los números de tus grupos siguen siendo predecibles.

      ¿Funcionará la regex en Python, PHP o Java?

      La pestaña de código convierte el patrón para cada lenguaje: Python recibe grupos (?P<name>…) e indicadores de re, PHP recibe delimitadores y comillas escapadas, Java y C# reciben literales de cadena correctamente escapados y Ruby usa \A y \z para coincidir con toda la entrada. El motor RE2 de Go no admite lookarounds ni referencias inversas, y la herramienta te avisa cuando un patrón los usa.

      ¿Qué significa perezoso?

      Por defecto, los cuantificadores son codiciosos y coinciden con todo lo posible. Un cuantificador perezoso coincide con lo mínimo posible, lo que importa cuando el mismo carácter puede aparecer más adelante, por ejemplo para encontrar el texto más corto entre dos comillas.

      ¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?

      Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.

      Herramientas relacionadas

      Ver todas las de Generadores de código →