尝试创建一个函数将字符串列表转换为一个字符串,并在单词之间添加空格


let rec createSentence(list) = (
match list with
case [] -> failwith "błędna lista"
| case [_] -> List.hd list
| case [_,_] -> List.hd list ^ createSentence(List.tl list)        
| case _ -> List.hd list ^ " " ^ createSentence(List.tl list);; 

);;

Ocaml返回语法错误:期望操作符。我不知道该怎么做

OCaml中的模式匹配具有以下语法,

match <expr> with
| <pattern1> -> <action1>
| <pattern2> -> <action2>
...

match ["hello"; "world"] with
| [word1; word2] -> print_endline (word1 ^ word2)
| _ -> assert false

另外,注意OCaml中的列表元素用;

分隔我建议阅读OCaml入门或其他OCaml书籍

更新:为了更清楚,OCaml中没有case关键字,你不应该在模式之前写case,即,而不是| case [],只写| []

相关内容

  • 没有找到相关文章

最新更新