eas*_*led 2 regex string ocaml
这可能是愚蠢但我只是没有看到它.这是我的代码
let rec lister old fixed =
let paren = Str.regexp "(|)" in
match old with
[] -> []
| h::t -> if Str.string_match paren h 0
then iter t ((Str.split_delim paren h)@fixed)
else iter t (h::fixed)
;;
let stl string =
let r = Str.regexp " " in
let l = lister (Str.split r string) []
;;
Run Code Online (Sandbox Code Playgroud)
错误是在最后;; 我得到了意想不到的标记";;".我尝试重做它有点像
let stl string =
let l = lister (Str.split (Str.regexp " ") string) []
;;
Run Code Online (Sandbox Code Playgroud)
但仍然没有.我不认为列表功能会产生影响,但我还是把它包括在内.思考?
你有一个不完整的let-in表达式:
let stl string =
let r = Str.regexp " " in
let l = lister (Str.split r s) []
Run Code Online (Sandbox Code Playgroud)
试试这个:
let stl string =
let r = Str.regexp " " in
lister (Str.split r s) []
Run Code Online (Sandbox Code Playgroud)
或者你可以做同等的事情:
let stl string =
let r = Str.regexp " " in
let l = lister (Str.split r s) [] in
l
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请查看OCaml文档.