У меня есть строка, которая, как я знаю, будет соответствовать одному (и только одному) из трех регулярных выражений.Я хочу попробовать каждое регулярное выражение по очереди, пока совпадение не будет найдено.Для двух регулярных выражений достаточно знать, что есть совпадение.Третье регулярное выражение имеет группу захвата и возвращает целое число.У меня есть активный шаблон для регулярных выражений:
let (|Regex|_|) pattern input =
let m = Regex.Match(input, pattern)
if m.Success then Some(List.tail [ for g in m.Groups -> g.Value ])
else None
Я новичок в F # и борюсь за идиоматический способ сделать это.Я действительно не хочу делать запутанное выражение «если-то-еще», любая помощь будет очень признательна.
Спасибо