CARVIEW |
Select Language
HTTP/2 200
date: Wed, 23 Jul 2025 08:11:12 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"224002b724c24b3ef041080052f60f08"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=rPrlctrTRg1po8h%2BoOvjJWRxYO1qTdOtUOIr2wk1yT09OASpBEDz7Fuh3ETdjCC4CI3WMdroPFknHwpiIj0zJ7TzBkFRn%2FLAkHWSSGFPqF0cK%2BIGAUH%2BQsEMQXUNdIgIuXapTLOeCduUpw2Yo0qIQ7ncR%2FQs4ULNn7EK6O8v%2Fr5LNzCEKwFuaIDGSV0Dd4pT88siH6l9kBJ1jfm4lFHl%2FUdiMOZousP1z%2FB2Puej4wjV47QS9%2FZIv0xmELlxybtLz8evxKw32PfsVPcQPnG1sA%3D%3D--XsPimskVLqDWTOYl--Y8OKXehFd5sWdXpqMV2MtA%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1948224517.1753258272; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 08:11:12 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 08:11:12 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: C2DE:3B93B0:6EE683:89E92C:68809920
GitHub - audreyt/regex-genex: Given a list of regexes, generate all possible strings that matches all of them.
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 10
Given a list of regexes, generate all possible strings that matches all of them.
License
audreyt/regex-genex
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Available on Hackage as: https://hackage.haskell.org/package/regex-genex The "genex" program finds all permutations of strings that matches every regular expressions specified in the command line, with full support for back references (\1 .. \9) and word boundaries (\b). The output is unsorted, but the order is deterministic across multiple runs: $ genex '\d' '[123abc]' # Must match both 1.00000000 "2" 1.00000000 "3" 1.00000000 "1" To enforce a fixed ordering for alternations, pipe the output to "sort -n": $ genex '(__|<>){1,3}' | sort -n 2.00000000 "<>" 2.00000001 "__" 4.00000002 "<><>" 4.00000003 "__<>" 4.00000006 "<>__" 4.00000007 "____" 6.00000010 "<><><>" 6.00000011 "__<><>" 6.00000014 "<>__<>" 6.00000015 "____<>" 6.00000026 "<><>__" 6.00000027 "__<>__" 6.00000030 "<>____" 6.00000031 "______" Output size and maximum string length are both capped at 65535 currently, but both can be raised if needed. Because genex generates matches lazily, we can use "head -n" to display only part of its output: genex '[abc]+[123]+.+' | head -n 10 Some caveats: - We translate * and + quantifiers into {0,3} and {1,4}, to make output appear more unique. - The set of . \D \W \S characters are limited to printable characters, again to make the output more pretty. - The ^ and $ anchors are taken to mean begin-of-line and end-of-line (implicit /m), since we already implicitly anchor on both ends. - No support yet for \l \u \L \U \Q \E (case and quotemeta modifiers) - No named Unicode properties or POSIX [[:upper:]] classes yet. Required Hackage libraries: sbv regex-tdfa stream-monad text Required binary in PATH: yices # Download it from https://yices.csl.sri.com/download-yices2.shtml You can directly run the Main.hs in the checkout directory as well: runghc Main.hs 'your regex here' Pre-built MacOSX binaries are in binaries/osx/; try "make test" for a sample run. Share and enjoy! Audrey
About
Given a list of regexes, generate all possible strings that matches all of them.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
You can’t perform that action at this time.