arrays - 将数组中的所有条目附加到字符串?
问题描述
我目前有一个包含 x 数量的字符串的数组,并且希望将所有这些条目附加到 OCaml 中的字符串中。
我知道在 OCaml 中将字符串附加到另一个字符串的方法是使用
let a ="Hello"
let b= "Blah Blah " ^ a
但是,我想使用数组中的所有条目来执行此操作。然后在附加完整数组后继续字符串。与此类似的东西:
let myArray = Array.make stages "Some text"
let myString = "I'm looking to append "^(ALL ENTRIES IN ARRAY)^" to this string"
解决方案
如果你有一个字符串列表而不是数组,那么 String.concat 就可以了。因此,如果您有数组,您可以将数组转换为列表,然后应用 String.concat,如下所示:
String.concat " " (Array.to_list str_arr)
但是,如果您不想将其转换为列表,则可以使用 fold_left ,如下所示:
Array.fold_left (fun x y -> x ^ y ^ " ") "" str_arr
请注意, fold_left 会为数组中的每个字符串(包括最后一个字符串)附加一个空格。String.concat 更好;它仅在字符串之间使用填充符
推荐阅读
- html - 在 HTML 中展开居中的导航栏
- html - 如何使图像成为纯白色而不是半透明白色?
- node.js - 如何在 TypeScript npm 模块中导出类型
- react-native - React Native useState 字符串与条件渲染
- python - 如何重复这些步骤
- sql - '没有为一个或多个必需参数提供值。' 错误,无法克服
- yq - 使用 yq 命令解析 yaml 文件时如何在结果中包含密钥
- mysql - 重新安装 MySQL 时出现错误“无法使用给定密码连接到 MySQL”
- r - 时间间隔之间的Difftime()?(右)
- javascript - 如何通过单击 HTML 网页上的按钮来运行 python 脚本?