Thank you so much ... I've updated my monad version here - https://github.com/ckkashyap/LearningPrograms/blob/master/Haskell/Parsing/xml_1.hs<https://github.com/ckkashyap/LearningPrograms/blob/master/Haskell/Parsing/xml_2.hs>
and the Applicative version here - https://github.com/ckkashyap/LearningPrograms/blob/master/Haskell/Parsing/xml_2.hs The applicative version however does not seem to work. Is there a good tutorial that I can look up for Parsec - I am checking out http://legacy.cs.uu.nl/daan/download/parsec/parsec.html but I am looking for a tutorial where a complex parser would be built ground up. Next I'd like to take care of escaped angular brackets. Regards, Kashyap On Thu, Jul 19, 2012 at 7:40 PM, Christian Maeder <christian.mae...@dfki.de>wrote: > Am 19.07.2012 15:41, schrieb Simon Hengel: > > On Thu, Jul 19, 2012 at 03:34:47PM +0200, Simon Hengel wrote: >> >>> openTag :: Parser String >>> openTag = char '<' *> many (noneOf ">") <* char '>' >>> >> > if you disallow empty tags and "/" within tags, then you can avoid the > notFollowedBy construct by: > > openTag = try (char '<' *> many1 (noneOf "/>")) <* char '>' > > C. > > > >>> endTag :: String -> Parser String >>> endTag str = string "</" *> string str <* char '>' >>> >> >> Well yes, modified to what Christian Maeder just suggested. >> >> Cheers, >> Simon >> >> >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe