packages feed

regexpr 0.3.4 → 0.4

raw patch · 2 files changed

+15/−10 lines, 2 files

Files

Text/RegexPR.hs view
@@ -8,6 +8,7 @@ , gmatchRegexPR		-- EXPERIMENTAL , subRegexPR , gsubRegexPR+, gsubRegexPRBy , splitRegexPR ) where @@ -43,19 +44,22 @@          Nothing                   -> src  gsubRegexPR :: String -> String -> String -> String-gsubRegexPR reg sub src = gsubRegexPRGen Nothing reg sub ("", src)+gsubRegexPR reg sub src = gsubRegexPRGen Nothing reg (const sub) ("", src) +gsubRegexPRBy :: String -> (String -> String) -> String -> String+gsubRegexPRBy reg subf src = gsubRegexPRGen Nothing reg subf ("", src)+ gsubRegexPRGen ::-  Maybe (String, String) -> String -> String -> (String, String) -> String-gsubRegexPRGen pmp reg sub src+  Maybe (String, String) -> String -> (String -> String) -> (String, String) -> String+gsubRegexPRGen pmp reg fsub src   = case matchRegexPRVerbose reg src of-      Just al@((pre, _, sp@(~(p,x:xs))), _)+      Just al@((pre, match, sp@(~(p,x:xs))), _)         -> case (pmp, sp) of                 (Just (_, ""), _)  -> ""                 _ | Just sp == pmp -> pre ++ [x] ++-                                      gsubRegexPRGen (Just sp) reg sub (x:p, xs)-                  | otherwise      -> pre ++ subBackRef al sub ++-                                      gsubRegexPRGen (Just sp) reg sub sp+                                      gsubRegexPRGen (Just sp) reg fsub (x:p, xs)+                  | otherwise      -> pre ++ subBackRef al (fsub match) +++                                      gsubRegexPRGen (Just sp) reg fsub sp       Nothing -> snd src  subBackRef ::
regexpr.cabal view
@@ -1,5 +1,5 @@ Name:		regexpr-Version:	0.3.4+Version:	0.4 License:	LGPL License-File:	LICENSE Author:		Yoshikuni Jujo <PAF01143@nifty.ne.jp>@@ -14,8 +14,9 @@   .   > matchRegexPR :: String -> Maybe ((String, (String, String)), [(Int, String)])   > gmatchRegexPR :: String -> [((String, (String, String)), [(Int, String)])]-  > subRegexPR :: String -> String -> String-  > gsubRegexPR :: String -> String -> String+  > subRegexPR :: String -> String -> String -> String+  > gsubRegexPR :: String -> String -> String -> String+  > gsubRegexPRBy :: String -> (String -> String) -> String -> String   > splitRegexPR :: String -> String -> [String]   .   Examples