on master help sign in
Add stripTags function
commitcee7648fcf40580295ab30fa9ce676086a8c3028 authorJasper Van der Jeugt <jaspervdj@gmail.com> dateSun 5 Jun 2011, 23:07 (15 years ago) parent51f0bfc
3 files changed+33
hakyll.cabal+1 src/Hakyll.hs+2 src/Hakyll/Web/Util/Html.hs+30
hakyll.cabal+1
@@ -84,6 +84,7 @@ Library
8484 Hakyll.Main
8585 Hakyll.Web.Blaze
8686 Hakyll.Web.Util.Url
87+ Hakyll.Web.Util.Html
8788 Hakyll.Web.Preview.Server
8889 Hakyll.Web.Preview.Poll
8990 Hakyll.Web.CompressCss
src/Hakyll.hs+2
@@ -28,6 +28,7 @@ module Hakyll
2828 , module Hakyll.Web.RelativizeUrls
2929 , module Hakyll.Web.Tags
3030 , module Hakyll.Web.Template
31+ , module Hakyll.Web.Util.Html
3132 , module Hakyll.Web.Util.Url
3233 ) where
3334
@@ -58,4 +59,5 @@ import Hakyll.Web.Pandoc.FileType
5859import Hakyll.Web.RelativizeUrls
5960import Hakyll.Web.Tags
6061import Hakyll.Web.Template
62+import Hakyll.Web.Util.Html
6163import Hakyll.Web.Util.Url
src/Hakyll/Web/Util/Html.hsnew file+30
@@ -0,0 +1,30 @@
1+-- | Miscellaneous HTML manipulation functions
2+--
3+module Hakyll.Web.Util.Html
4+ ( stripTags
5+ ) where
6+
7+-- | Strip all HTML tags from a string
8+--
9+-- Example:
10+--
11+-- > stripTags "<p>foo</p>"
12+--
13+-- Result:
14+--
15+-- > "foo"
16+--
17+-- This also works for incomplete tags
18+--
19+-- Example:
20+--
21+-- > stripTags "<p>foo</p"
22+--
23+-- Result:
24+--
25+-- > "foo"
26+--
27+stripTags :: String -> String
28+stripTags [] = []
29+stripTags ('<' : xs) = stripTags $ drop 1 $ dropWhile (/= '>') xs
30+stripTags (x : xs) = x : stripTags xs