因此,到目前为止,我一直在研究Haskell。我需要将字符串列表转换为包含字符串的元组列表,以便将它们分别配对。
赞:
strr = "INDUSTRIAL, PARKS, PROPERTY"
','.join([s.strip() for s in strr.split(', ')])
进入
["String1 String 2", "String3 String4", "String5 String6"]
我实际上还没有想象过任何代码,但是我不知道这应该如何工作,所以我真的没有什么期望,只是我可以遵循的提示。
无论如何,我试图在没有任何外部库的情况下实现它,因此链接它们并不是很有用。
谢谢您的建议!
答案 0 :(得分:3)
如果您的列表中没有错字,应该简单地写为:
strToTuple :: [String] -> [(String, String)]
strToTuple = map toTuple
toTuple :: String -> (String, String)
toTuple st = joinWords $ words st
joinWords :: [a] -> (a, a)
joinWords [x, y] = (x, y)
joinWords _ = error "bad input, list should be length 2"
输出:
strToTuple ls
=> [("String1","String2"),("String3","String4"),("String5","String6")]
请注意,您的帖子使用的是“字符串2”而不是“字符串2”,我不确定这是不是一个错误,但如果是,则应该可以使用