将字符串连接到[字符串]的所有元素haskell
问题描述:
我是新来的haskell,似乎无法弄清楚这一点。我一直在使用scalpel网页抓取工具,并希望将一串URL扩展与URL连接起来。将字符串连接到[字符串]的所有元素haskell
例如,假设我们已经刮掉了一些URL扩展成字符串
result =["/contact","/content"]
的名单,我们已经让
websiteURL = "www.website.com"
我怎么在列表到达?
["www.website.com/contact", "www.website.com/content"]
答
map ("aaa"++) ["bbb", "ccc"]
==> [ "aaabbb", "aaaccc" ]
答
你要遍历您的扩展列表和应用功能的每个,因此需要某种map
。
要应用的功能是追加websiteURL
字符串,因此答案是:
map (mappend websiteURL) result
如果你不知道mappend
功能,您可以通过搜索Monoid a => a -> a -> a
hoogle找到它。
(我会让其他人推广到更多的抽象类型,如果他们想...)
+1
如果你不知道'mappend'函数,你怎么可能会想出类型签名'Monoid a => a - > a - > a'?在这种情况下,输入'String - > String - > String'的自然类型签名搜索不会列出正确的函数,直到结果列表中的相当晚。 –
这让我感觉好一点。我说得对,但是语法不正确。 –