Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
exrex — Métodos irregulares en expresiones regulares | Kitploit
Herramientas/GitHubGitHub/asciimoo/exrex
Utilidades de Propósito GeneralGeneración de PayloadsFuzzing
GitHubasciimoo/exrex

exrex

Métodos irregulares en expresiones regulares

Ver Repositorio
957982hace 9 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

EXREX

Métodos irregulares para expresiones regulares.

Exrex es una herramienta de línea de comandos y un módulo de Python que genera todas - o aleatorias - las cadenas que coinciden con una expresión regular dada y más. Es Python puro, sin dependencias externas.

Hay expresiones regulares con infinitas cadenas coincidentes (ej.: [a-z]+), en estos casos exrex limita la longitud máxima de las partes infinitas.

Exrex usa generadores, por lo que el uso de memoria no depende del número de cadenas coincidentes.

Version Downloads

Características

  • Generar todas las cadenas coincidentes
  • Generar una cadena coincidente aleatoria
  • Contar el número de cadenas coincidentes
  • Simplificación de expresiones regulares

Instalación

Para instalar exrex, simplemente:

root@kitploit:~
$ pip install exrex

o

root@kitploit:~
$ easy_install exrex

Uso

como módulo de Python

Descargar herramienta
root@kitploit:~
>>> import exrex

>>> exrex.getone('(ex)r\\1')
'exrex'

>>> list(exrex.generate('((hai){2}|world!)'))
['haihai', 'world!']

>>> exrex.getone('\d{4}-\d{4}-\d{4}-[0-9]{4}')
'3096-7886-2834-5671'

>>> exrex.getone('(1[0-2]|0[1-9])(:[0-5]\d){2} (A|P)M')
'09:31:40 AM'

>>> exrex.count('[01]{0,9}')
1023

>>> print '\n'.join(exrex.generate('This is (a (code|cake|test)|an (apple|elf|output))\.'))
This is a code.
This is a cake.
This is a test.
This is an apple.
This is an elf.
This is an output.

>>> print exrex.simplify('(ab|ac|ad)')
(a[bcd])

Uso desde línea de comandos

root@kitploit:~
> exrex --help
usage: exrex.py [-h] [-o FILE] [-l] [-d DELIMITER] [-v] REGEX

exrex - regular expression string generator

positional arguments:
  REGEX                 REGEX string

optional arguments:
  -h, --help            show this help message and exit
  -o FILE, --output FILE
                        Output file - default is STDOUT
  -l N, --limit N       Max limit for range size - default is 20
  -c, --count           Count matching strings
  -m N, --max-number N  Max number of strings - default is -1
  -r, --random          Returns a random string that matches to the regex
  -s, --simplify        Simplifies a regular expression
  -d DELIMITER, --delimiter DELIMITER
                        Delimiter - default is \n
  -v, --verbose         Verbose mode

Ejemplos:

root@kitploit:~
$ exrex '[asdfg]'
a
s
d
f
g

$ exrex -r '(0[1-9]|1[012])-\d{2}'
09-85

$ exrex '[01]{10}' -c
1024

Errores

¿Errores o sugerencias? Visita el rastreador de incidencias.

Documentación

http://exrex.readthedocs.org/en/latest/

TODO

  • Opciones de línea de comandos para cambiar conjuntos de caracteres/rangos/límites de rango por defecto (ej. para '.','\s'..) (40%)
  • Extender categorías (re.sre_parse.CATEGORIES) (30%)
  • Mejorar setup.py
  • Código más verboso
  • Documentación
  • Optimizaciones
  • Generación de n cadenas coincidentes aleatorias diferentes
  • Reducción del uso de memoria (100%?) - generadores
  • Contar el número de cadenas coincidentes - (100%?)
  • Soporte Unicode (100%)
  • Manejar referencias a grupos (100%)
  • Compatibilidad con Python3 (100%) (>= python3.3)

Licencia

root@kitploit:~
exrex is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

exrex is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with exrex. If not, see < http://www.gnu.org/licenses/ >.

(C) 2012- by Adam Tauber, <[email protected]>

Diversión/arte

  • Boat: exrex '( {20}(\| *\\|-{22}|\|)|\.={50}| ( ){0,5}\\\.| {12}~{39})'
  • Eyes: exrex '(o|O|0)(_)(o|O|0)'

Proyectos similares

Herramientas que generan una lista de todas las cadenas posibles que coinciden con un patrón dado:

  • regldg (incluye una demostración en vivo en el sitio web)
  • regex-genex (soporta el uso de múltiples patrones regex simultáneamente)

Herramientas que generan cadenas aleatorias, una por una, que coinciden con un patrón dado:

  • randexp.js (incluye varias demostraciones en vivo en el sitio web)
  • rstr.xeger (un método del módulo rstr de Python)

Perfilado

  • python -m cProfile exrex.py '[a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z]' -o /dev/null
  • python -m cProfile exrex.py '[0-9]{6}' -o /dev/null