首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在OCaml中去掉整型前后的括号?

在OCaml中,可以使用模式匹配和正则表达式来去掉整型前后的括号。

方法一:使用模式匹配 可以定义一个函数,使用模式匹配来匹配整型前后的括号,并返回去掉括号后的整型值。

代码语言:txt
复制
let remove_brackets (s: string) : int option =
  match String.trim s with
  | "(" ^ num ^ ")" -> Some (int_of_string num)
  | _ -> None

使用示例:

代码语言:txt
复制
let result = remove_brackets "(123)" in
match result with
| Some num -> print_int num
| None -> print_string "Invalid input"

方法二:使用正则表达式 可以使用OCaml的Str模块来进行正则表达式匹配,然后提取整型值。

代码语言:txt
复制
let remove_brackets (s: string) : int option =
  let regex = Str.regexp "\\((\\([0-9]+\\))\\)" in
  if Str.string_match regex s 0 then
    Some (int_of_string (Str.matched_group 1 s))
  else
    None

使用示例:

代码语言:txt
复制
let result = remove_brackets "(123)" in
match result with
| Some num -> print_int num
| None -> print_string "Invalid input"

以上是在OCaml中去掉整型前后的括号的方法,可以根据具体需求选择使用模式匹配或正则表达式。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券