It is even simpler than that.  The type determines the return value.

>"axxfayyf" =~ "a..f" :: Bool
True

>"axxfayyf" =~ "a..f" :: Int
2

>"axxfayyf" =~ "a..f" :: String
"axxf"

>"axxfayyf" =~ "a..f" :: [[String]]
[["axxf"],["ayyf"]]

>"axxfayyf" =~ "a..f" :: [MatchArray]
[array (0,0) [(0,(0,4))],array (0,0) [(0,(4,4))]]

>"axxfayyf" =~ "a..f" :: (MatchOffset, MatchLength)
(0,4)

Among other contexts specified in :i RegexContext

On Tue, Jul 20, 2010 at 11:55 AM, Omari Norman <omari@smileystation.com> wrote:
> How do I use Text.Regex.PCRE to get information on multiple matches? For
> instance, in ghci I get this error message:
>
> Prelude Text.Regex.PCRE> "foo" =~ "o" :: [(Int,Int)]

Solved; do

getAllMatches ("foo" =~ "o") :: [(Int, Int)]

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe