Re: Intersection problem

*To*: mathgroup at smc.vnet.net*Subject*: [mg125993] Re: Intersection problem*From*: Bob Hanlon <hanlonr357 at gmail.com>*Date*: Wed, 11 Apr 2012 18:21:52 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <201204100627.CAA10654@smc.vnet.net>

list1 = {{a, x}, {b, y}, {c, z}}; list2 = {b, c, d}; Select[list1, MemberQ[list2, #[[1]]] &] {{b, y}, {c, z}} Cases[list1, _?(MemberQ[list2, #[[1]]] &)] {{b, y}, {c, z}} Cases[list1, {x_, _} /; MemberQ[list2, x]] {{b, y}, {c, z}} DeleteCases[list1, _?(FreeQ[list2, #[[1]]] &)] {{b, y}, {c, z}} DeleteCases[list1, {x_, _} /; FreeQ[list2, x]] {{b, y}, {c, z}} Pick[list1, MemberQ[list2, #[[1]]] & /@ list1] {{b, y}, {c, z}} Bob Hanlon On Tue, Apr 10, 2012 at 2:27 AM, Cisco Lane <travlorf at yahoo.com> wrote: > I need to select out the elements of the first list whose first elements are contained in the second list. For example > > first list: {{a,x},{b,y},{c,z}} > > second list: {b,c,d} > > result: {{b,y},{c,z}} > > Is there a quick way to do this? Intersection, maybe somehow?

**References**:**Intersection problem***From:*Cisco Lane <travlorf@yahoo.com>