保护String.to_int和其他人

时间:2011-07-18 11:30:13

标签: opa

我使用String.to_int,有时我会收到错误,例如当字符串不是int的表示时。我想在使用该函数之前捕获这些错误或测试参数。一些想法?

由于

1 个答案:

答案 0 :(得分:4)

嗯,有人可能会说如果stdlib中的String.to_int返回一个可选的整数(none表示错误)会更好。

但是,在Opa中,大多数解析都是使用parsers *完成的。例如,要获得上述功能,您可以写:

string_to_int_opt(s : string) : option(int) =
  Parser.try_parse(Rule.integer, s)

或者,如果你想要更简洁的等价物:

string_to_int_opt = Parser.try_parse(Rule.integer, _)

或者如果它是更复杂的解析的一部分,那么你只需要在那里使用Rule.integer解析器。

(*)我想本手册的这一部分可以使用一些扩展......