LINUX.ORG.RU

Ocaml pattern matching


0

0

let l = 1::2::3::[];;

match l with |1::a::3::[] -> a;; - : int = 2

match l with |1::a::[] ->a;; Exception: Match_failure ("", 2, -13).

Как бы так ухитриться, чтоб а в последнем случае стал бы 2::3::[], грубо говоря, чтоб попадание было "жадным" - не только по элементам списка, но и по группам элементов. Это синтаксически возможно?

★★★★★

Re: Ocaml pattern matching

let l = 1::2::3::[];;

match l with
 |1::a::3::[] -> a;;
- : int = 2

match l with
 |1::a::[] ->a;;
Exception: Match_failure ("", 2, -13). 

Pi ★★★★★ ()
Ответ на: Re: Ocaml pattern matching от ero-sennin

Re: Ocaml pattern matching

уточню ситуацию...

имею 1::2::3::4::[]

знаю границы 1 и 4,

нужно 2::3::[]

Pi ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.