功能字符串CAML灯



我需要一个吸收字符串和char的函数,它会滑动字符串,如果找到char return return true否则否false。

这是我的起点:

let rec check s a = match s with
    "" -> false
    | x::xs -> if x = a then true else check xs a ;;

我无法使用CAML Light的库功能(例如Index_char)

感谢您的帮助!

我将留下有关它如何工作的解释,这是我的解决方案:

strobel@suse131:~> rlwrap camllight 
>       Caml Light version 0.75    
let findchar c s =
 let len = string_length s in
 let rec f1 i s = 
   if i = len then false 
   else if s.[i]=c then true else f1 (succ i) s in
     f1 0 s
;;
findchar : char -> string -> bool = <fun>
#let s = "this is the searched string";;
s : string = "this is the searched string"
#findchar `a` s;;
- : bool = true
#findchar `y` s;;
- : bool = false

其他练习:

  • 我们可以在F1定义中忽略参数S吗?
  • 我们如何称呼F1主体中len的使用/出现?

相关内容

  • 没有找到相关文章

最新更新