Skip to content

Comment on Given a list of regexes, generate all possible strings that matches all of them

Comments

This is really interesting, but wait: won't the number of strings matching a given set of regexes be infinite, for many different types of regexes, i.e. it's like the number of phrases in language that fit a certain grammatical rule.

The github page mentions that * and + quantifiers are redefined to have limits of {0,3} and {1,4} respectively. That wasn't what you were thinking of, was it?

Yes. The list is generated lazily and ordered from shortest to longest, though, so piping the output to "|head -n 100" will terminate rather quickly.

The ([String] -> IO [String]) API also generated a lazy list:

    http://hackage.haskell.org/packages/archive/regex-genex/0.2.0/doc/html/Regex-Genex.html
so one can take only part of the output like this:
   Regex.Genex> fmap (take 5) (genex ["([abc]+)\\1"])
   ["bb","cc","aa","bbbb","cccc"]
AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.