string - 在 SML 中使用 foldr 连接字符串

标签 string concatenation sml fold

我正在尝试声明一个函数,字符串列表 -> 字符串,例如使用输入 ["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/

相关文章:

string - 通过返回分配的字符串导致内存泄漏

string - 如何在 Rust 中索引字符串

powershell - 如何将字符串与Powershell中包含空格的链接连接起来

compiler-errors - SML 错误 : syntax error: inserting DOT

module - '如何正确使用高阶仿函数 ?' or ' 如何在 funsigs 中获得真正的乐趣?

r - 如何在 R 中以字符串形式调用矩阵?

字符串比较的代码优化

c++ - 如何连接 "on the fly"一个文本+整数并将其传递给函数?

c++ - 如何在字符串中添加整数?

haskell - 在递归之前有教学或学习map/reduce/等的经验吗?