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
> How do I use Text.Regex.PCRE to get information on multiple matches? ForSolved; do
> instance, in ghci I get this error message:
>
> Prelude Text.Regex.PCRE> "foo" =~ "o" :: [(Int,Int)]
getAllMatches ("foo" =~ "o") :: [(Int, Int)]
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe