我目前有一个包含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"
答案 0 :(得分:0)
如果您有一个字符串列表而不是数组,那么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更好;它仅在字符串之间使用填充符