blob: e1df6aca7fadbbc5e60ad76d7ccb8639cf3db828 (
plain) (
blame)
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
|
{-# LANGUAGE Haskell2010 #-}
module Bug546 where
-- |Test:
--
-- [@[code with square \\ brackets\]@] lorem ipsum
x = 1
-- |
--
-- [@[..\]@] Matches any of the enclosed characters. Ranges of characters can
-- be specified by separating the endpoints with a @\'-'@. @\'-'@ or
-- @']'@ can be matched by including them as the first character(s)
-- in the list. Never matches path separators: @[\/]@ matches
-- nothing at all. Named character classes can also be matched:
-- @[:x:]@ within @[]@ specifies the class named @x@, which matches
-- certain predefined characters. See below for a full list.
--
-- [@[^..\]@ or @[!..\]@] Like @[..]@, but matches any character /not/ listed.
-- Note that @[^-x]@ is not the inverse of @[-x]@, but
-- the range @[^-x]@.
--
-- [@\<m-n>@] Matches any integer in the range m to n, inclusive. The range may
-- be open-ended by leaving out either number: @\"\<->\"@, for
-- instance, matches any integer.
--
-- [@**/@] Matches any number of characters, including path separators,
-- excluding the empty string.
--
-- Supported character classes:
--
-- [@[:alnum:\]@] Equivalent to @\"0-9A-Za-z\"@.
--
-- [@[:alpha:\]@] Equivalent to @\"A-Za-z\"@.
--
-- [@[:blank:\]@] Equivalent to @\"\\t \"@.
--
-- [@[:cntrl:\]@] Equivalent to @\"\\0-\\x1f\\x7f\"@.
--
-- [@[:digit:\]@] Equivalent to @\"0-9\"@.
--
-- [@[:graph:\]@] Equivalent to @\"!-~\"@.
--
-- [@[:lower:\]@] Equivalent to @\"a-z\"@.
--
-- [@[:print:\]@] Equivalent to @\" -~\"@.
--
-- [@[:punct:\]@] Equivalent to @\"!-\/:-\@[-`{-~\"@.
--
-- [@[:space:\]@] Equivalent to @\"\\t-\\r \"@.
--
-- [@[:upper:\]@] Equivalent to @\"A-Z\"@.
--
-- [@[:xdigit:\]@] Equivalent to @\"0-9A-Fa-f\"@.
compile :: String -> String
compile = id
|