/
RE.hs
69 lines (63 loc) · 2.04 KB
/
RE.hs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
{-# OPTIONS_GHC -fno-warn-dodgy-exports #-}
-- |
-- Module : Text.RE
-- Copyright : (C) 2016-17 Chris Dornan
-- License : BSD3 (see the LICENSE file)
-- Maintainer : Chris Dornan <chris.dornan@irisconnect.com>
-- Stability : RFC
-- Portability : portable
module Text.RE
(
-- * The Tutorial
-- $tutorial
-- * How to use this library
-- $use
-- * Further Use
-- $further
) where
-- $tutorial
--
-- We have a regex tutorial at <http://tutorial.regex.uk>.
-- $use
--
-- This module just provides a brief overview of the regex package. You
-- will need to import one of the API modules of which there is a choice
-- which will depend upon two factors:
--
-- * Which flavour of regular expression do you want to use? If you need
-- Posix flavour REs then you will want the TDFA modules, otherwise its
-- PCRE for Perl-style REs.
--
-- * What type of text do you want to match: (slow) @String@s, @ByteString@,
-- @ByteString.Lazy@, @Text@, @Text.Lazy@ or the anachronistic @Seq Char@
-- or indeed some good old-fashioned polymorphic operators?
--
-- While we aim to provide all combinations of these choices, some of them
-- are currently not available. In the regex package we have:
--
-- * "Text.RE.TDFA.ByteString"
-- * "Text.RE.TDFA.ByteString.Lazy"
-- * "Text.RE.ZeInternals.TDFA"
-- * "Text.RE.TDFA.Sequence"
-- * "Text.RE.TDFA.String"
-- * "Text.RE.TDFA.Text"
-- * "Text.RE.TDFA.Text.Lazy"
-- * "Text.RE.TDFA"
--
-- The PCRE modules are contained in the separate @regex-with-pcre@
-- package:
--
-- * Text.RE.PCRE.ByteString
-- * Text.RE.PCRE.ByteString.Lazy
-- * Text.RE.ZeInternals.PCRE
-- * Text.RE.PCRE.Sequence
-- * Text.RE.PCRE.String
-- * Text.RE.PCRE
-- $further
-- For more specialist applications we have the following:
--
-- * "Text.RE.REOptions" for specifying back-end specific options;
-- * "Text.RE.Replace" for the full text-replacement toolkit;
-- * "Text.RE.TestBench" for building up, testing and documenting;
-- macro environments for use in REs;
-- * "Text.RE.Tools" for an AWK-like text-processing toolkit.