我正在尝试声明一个函数,字符串列表 -> 字符串,例如使用输入
["Chicago","city","USA"]
应该返回 "Chicago city USA"
。到目前为止我所做的是:
fun gather ts = foldr op ^ "" ts;
这似乎有点符合实际,但问题是,我想在单词之间包含空格,因为此函数将返回 "ChigagocityUSA"
。
最佳答案
是的,问题是 ^
是一个对于两个字符串“foo”和“bar”返回“foobar”的函数,尽管你想要“foo bar”。
所以你需要做的是定义一个函数,它接受两个字符串参数(作为一个元组)并返回两个字符串,它们之间有一个空格(所以 string1 ^ ""^ string2
).
然后您可以将该函数作为参数传递给 foldr
并获得您想要的结果。
关于string - 在 SML 中使用 foldr 连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3900369/