Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
exrex — 정규 표현식의 비정규적 메서드 | Kitploit
도구/GitHubGitHub/asciimoo/exrex
General Purpose UtilitiesPayload GenerationFuzzing
GitHubasciimoo/exrex

exrex

정규 표현식의 비정규적 메서드

저장소 보기
957988개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

EXREX

정규 표현식을 위한 비정규적인 방법들.

Exrex는 주어진 정규 표현식과 일치하는 모든(또는 무작위) 문자열을 생성하는 명령줄 도구이자 Python 모듈입니다. 순수 Python으로 작성되었으며, 외부 의존성이 없습니다.

일치하는 문자열이 무한한 정규 표현식(예: [a-z]+)도 있으며, 이런 경우 exrex는 무한 부분의 최대 길이를 제한합니다.

Exrex는 제너레이터를 사용하므로, 메모리 사용량은 일치하는 문자열의 수에 의존하지 않습니다.

Version Downloads

기능

  • 일치하는 모든 문자열 생성
  • 무작위 일치 문자열 생성
  • 일치하는 문자열 수 계산
  • 정규 표현식 단순화

설치

exrex를 설치하려면, 다음을 실행하세요:

root@kitploit:~
$ pip install exrex

또는

root@kitploit:~
$ easy_install exrex

사용법

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

명령줄 사용법

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

예시:

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

버그

버그 또는 제안? 이슈 트래커를 방문하세요.

문서

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

TODO

  • 기본 문자 집합/범위/범위 제한을 변경하는 명령줄 스위치 (예: '.','\s'..) (40%)
  • 카테고리 확장 (re.sre_parse.CATEGORIES) (30%)
  • setup.py 개선
  • 코드 자세히 작성
  • 문서화
  • 최적화
  • 서로 다른 무작위 일치 문자열 n개 생성
  • 메모리 사용량 감소 (100%?) - 제너레이터
  • 일치하는 문자열 수 계산 - (100%?)
  • 유니코드 지원 (100%)
  • 그룹 참조 처리 (100%)
  • Python3 호환성 (100%) ( >= python3.3)

라이선스

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

재미/예술

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

유사 프로젝트

주어진 패턴과 일치하는 모든 가능한 문자열 목록을 생성하는 도구:

  • regldg (웹사이트에서 라이브 데모 제공)
  • regex-genex (여러 정규 표현식 패턴을 동시에 사용 가능)

주어진 패턴과 일치하는 무작위 문자열을 하나씩 생성하는 도구:

  • randexp.js (웹사이트에서 여러 라이브 데모 제공)
  • rstr.xeger (rstr Python 모듈의 메서드)

프로파일링

  • 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
도구 다운로드