我的使用Text.Parsec
有点生锈了。如果我只想返回匹配的字符串,这是惯用的吗?
category :: Stream s m Char => ParsecT s u m [Char]
category = concat <$> (many1 $ (:) <$> char '/' <*> (many1 $ noneOf "/\n"))
我觉得可能有一个现有的运营商liftM concat . many1
or (:) <$> p1 <*> p2
我忽略了这一点,但我不确定。
我想那很好。稍微明智的命名会让它更漂亮:
category = concat <$> many1 segment
where
segment = (:) <$> char '/' <*> many1 (noneOf "/\n")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)