我使用String.to_int,有时我会收到错误,例如当字符串不是int的表示时。我想在使用该函数之前捕获这些错误或测试参数。一些想法?
由于
答案 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
解析器。
(*)我想本手册的这一部分可以使用一些扩展......