Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
exrex — Méthodes irrégulières sur les expressions régulières | Kitploit
Outils/GitHubGitHub/asciimoo/exrex
Utilitaires GénérauxGénération de PayloadsFuzzing
GitHubasciimoo/exrex

exrex

Méthodes irrégulières sur les expressions régulières

Voir le dépôt
95798il y a 8 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

EXREX

Méthodes irrégulières pour les expressions régulières.

Exrex est un outil en ligne de commande et un module Python qui génère toutes les chaînes correspondantes - ou aléatoires - à une expression régulière donnée, et plus encore. Il est écrit en Python pur, sans dépendances externes.

Il existe des expressions régulières avec un nombre infini de chaînes correspondantes (par exemple : [a-z]+), dans ces cas exrex limite la longueur maximale des parties infinies.

Exrex utilise des générateurs, donc l'utilisation de la mémoire ne dépend pas du nombre de chaînes correspondantes.

Version Downloads

Fonctionnalités

  • Générer toutes les chaînes correspondantes
  • Générer une chaîne correspondante aléatoire
  • Compter le nombre de chaînes correspondantes
  • Simplification d'expressions régulières

Installation

Pour installer exrex, il suffit de :

root@kitploit:~
$ pip install exrex

ou

root@kitploit:~
$ easy_install exrex

Utilisation

en tant que module Python

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])

Utilisation en ligne de commande

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

Exemples :

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

Bogues

Des bogues ou des suggestions ? Visitez le suivi des problèmes.

Documentation

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

À faire

  • Commutateurs en ligne de commande pour modifier les jeux de caractères/plages/limites de plage par défaut (par exemple pour '.','\s'..) (40%)
  • Étendre les catégories (re.sre_parse.CATEGORIES) (30%)
  • Améliorer setup.py
  • Code plus verbeux
  • Documentation
  • Optimisations
  • Génération de n chaînes correspondantes aléatoires différentes
  • Réduction de l'utilisation de la mémoire (100%?) - générateurs
  • Compter le nombre de chaînes correspondantes - (100%?)
  • Support Unicode (100%)
  • Gérer les références de groupe (100%)
  • Compatibilité Python 3 (100%) (>= python3.3)

Licence

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]>

Amusant/arts

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

Projets similaires

Outils qui génèrent une liste de toutes les chaînes possibles correspondant à un motif donné :

  • regldg (propose une démonstration en direct sur le site web)
  • regex-genex (permet d'utiliser plusieurs motifs d'expressions régulières simultanément)

Outils qui génèrent des chaînes aléatoires, une par une, correspondant à un motif donné :

  • randexp.js (propose plusieurs démos en direct sur le site web)
  • rstr.xeger (une méthode du module Python rstr)

Profilage

  • 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
Télécharger l’outil