regex

regex is a regular expression toolkit for regex-base with:

  • a text-replacement toolkit with type-safe text-replacement templates;
  • special datatypes for matches and captures;
  • compile-time checking of RE syntax;
  • a unified means of controlling case-sensitivity and multi-line options;
  • high-level AWK-like tools for building text processing apps;
  • the option of using match operators with reduced polymorphism on the text and result types;
  • regular expression macros including:
    • a number of useful RE macros;
    • a test bench for testing and documenting new macro environments;
  • built-in support for the TDFA and PCRE back ends;
  • comprehensive documentation, tutorials and copious examples.

See the About page for details.

regex and regex-examples

The library and tutorial, tests and examples have been split across two packages:

  • the regex package contains the regex library with the Posix TDFA back end
  • the regex-with-pcre library package contains the extra modules needed for the PCRE back end
  • the regex-examples package contains the tutorial, tests and example programs.

Road Map

See the Roadmap page for details.

The regex blog

Check out the regex blog for news articles and discussion concerning all things regex.

Build Status

Hackage BSD3 License Un*x build Windows build Coverage

See build status page for details.

Installing the Package

The package can be easily installed with cabal or stack on GHC-8.0, 7.10 or 7.8 for the above platforms. See the Installation page for details.

The Tutorial Tests and Examples

See the Tutorial page and Examples page for details.

Helping Out

If you have any feedback or suggestion then please drop us a line.

The Contact page has more details.

The API

The Haddocks can be found at http://hs.regex.uk.

The Macro Tables

The macro environments are an important part of the package and are documented here.

The regex.uk Directory

A handy overview of the regex.uk domain can be found here.

The Changelog

The changelog is posted here.

The Authors

This library was written and is currently maintained by Chris Dornan aka @cdornan