RE: Pattern Matching in Lists

*To*: mathgroup at smc.vnet.net*Subject*: [mg35569] RE: [mg35547] Pattern Matching in Lists*From*: "DrBob" <majort at cox-internet.com>*Date*: Fri, 19 Jul 2002 06:08:38 -0400 (EDT)*Reply-to*: <drbob at bigfoot.com>*Sender*: owner-wri-mathgroup at wolfram.com

How's this? w = {1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0}; Count[Transpose[{Drop[w, -1], Drop[w, 1]}], {1, 0}] 4 If you want the list treated as a cycle, so that 1 at the end and 0 at the beginning counts as a match, here's a different example input and different counting method: w2 = {0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1}; Count[Transpose[{w2, RotateRight[w2, 1]}], {1, 0}] 5 Bobby Treat -----Original Message----- From: Anthony Mendes [mailto:amendes at zeno.ucsd.edu] To: mathgroup at smc.vnet.net Subject: [mg35569] [mg35547] Pattern Matching in Lists Hello, Suppose w={1,1,1,0,0,1,0,1,0,0,1,0,0}. How can I count the number of occurrences of a 1 in w immediately followed by a 0 in w? I have tried every incarnation of Count[] I can think of; for example, Count[w,{___,1,0,___}] does not seem to work. In general, how can I count the number of occurrences of a 1 followed by a 0 in a list of 1's and 0's? Thank you! -- Tony _____________________ amendes at math.ucsd.edu