Re: Pattern matching in lists
- To: mathgroup at smc.vnet.net
- Subject: [mg116116] Re: Pattern matching in lists
- From: Leonid Shifrin <lshifr at gmail.com>
- Date: Wed, 2 Feb 2011 07:03:45 -0500 (EST)
Hi Harvey, Here is one way: In[1]:= sequenceMemberQ[target_List, seq_List] := MemberQ[Partition[target, Length[seq], 1], seq] In[2]:= sequenceMemberQ[{1, 3, 2, 6, 5, 1, 4, 6, 3, 9}, {1, 4, 6}] Out[2]= True Regards, Leonid On Wed, Feb 2, 2011 at 2:07 PM, Harvey P. Dale <hpd1 at nyu.edu> wrote: > MemberQ easily tests whether a single integer appears in a list > of integers. Suppose, however, that I want to test not for a single > integer but for two or more consecutive integers, e.g., to see whether > {1,4,6} is a member of {1,3,2,6,5,1,4,6,3,9}. I can do this by > converting both lists into strings and then using string-matching > functions, but is there some way of doing it directly without that > conversion? > > Thanks. > > Harvey > > Harvey P. Dale > University Professor of Philanthropy and the Law > Director, National Center on Philanthropy and the Law > 139 MacDougal Street > New York, N.Y. 10012-1076 > Tel: 212-998-6161 > Fax: 212-995-3149 > =09 > > ______________________________________________________________________ > This email has been scanned by the MessageLabs Email Security System. > For more information please visit http://www.messagelabs.com/email > ______________________________________________________________________ > >