git.iko.soy/typeable/pandoc
on master help sign in
Added escapeCharAsString to Text.Pandoc.Shared.

git-svn-id: https://pandoc.googlecode.com/svn/trunk@738 788f1e2b-df1e-0410-8736-df70ead52e1b

commit7d2c9c6fe6458a6b15fa63fe7ee0651a57e5ce32 authorfiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> dateThu 19 Jul 2007, 08:08 (19 years ago) parent94c6a1b
1 file changed+9
src/Text/Pandoc/Shared.hs+9
src/Text/Pandoc/Shared.hs+9
@@ -36,6 +36,7 @@ module Text.Pandoc.Shared (
3636 joinWithSep,
3737 tabsToSpaces,
3838 backslashEscape,
39+ escapeCharAsString,
3940 endsWith,
4041 stripTrailingNewlines,
4142 removeLeadingTrailingSpace,
@@ -268,6 +269,14 @@ backslashEscape special (x:xs) = if x `elem` special
268269 then '\\':x:(backslashEscape special xs)
269270 else x:(backslashEscape special xs)
270271
272+-- | Escape a character as a string
273+escapeCharAsString ch str "" = ""
274+escapeCharAsString ch str (x:xs) | x == ch =
275+ str ++ escapeCharAsString ch str xs
276+escapeCharAsString ch str xs =
277+ let (a,b) = break (== ch) xs in
278+ a ++ escapeCharAsString ch str b
279+
271280-- | Returns @True@ if string ends with given character.
272281endsWith :: Char -> [Char] -> Bool
273282endsWith char [] = False