筛选列表中的值

来源:互联网 发布:nginx ip会话保持 编辑:程序博客网 时间:2024/05/29 15:39

筛选列表中的值


// 取出 [[("XX",1);("XX",2)];[...]] 中的 XX
// [["XX";"XX"];[...]]   
let t1 = [[("XX",1);("XX",2)]]
t1  |> List.map (List.map (fun (a, b) -> a)) 
// [["XX"; "XX"]]

let t2 = [[("AA",1);("BB",2)];["CC",3];["DD",4]]

let check2 ( i:'a) fz = 
    let t = List.fold (fun acc (_,x) -> acc+x) 0 i
    if ( t = fz ) then true 
    else false

t2  |> List.filter (fun i -> check2 i 3)
    |> List.map (List.map (fun (a, _) -> a))
// [["AA"; "BB"]; ["CC"]]

原创粉丝点击