Re: Building List
- To: mathgroup at smc.vnet.net
- Subject: [mg48031] Re: Building List
- From: astanoff_otez_ceci at yahoo.fr (astanoff)
- Date: Sat, 8 May 2004 01:23:35 -0400 (EDT)
- References: <c7fhhg$o9u$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Bruce W. Colletti wrote: > Re Mathematica 5.0.1.0. > I have a list of lists -- e.g., L = { {1,2},{3,4,5,6},{7,8} } -- and > want to replace element-lists (whose length exceeds 2) with another list > built from that element. All else is untouched. > For instance, using L above, replace {3,4,5,6} with {3,4}, {3,5}, {3,6}. > This transforms L to the desired form { {1,2}, {3,4}, {3,5}, {3,6}, > {7,8} }. > Although I can do this using Sow and Reap, am hoping there's an easier > way using rules (/.). In general, I want to replace those L-elements x > (that meet a criterion) with foo[x]. > Thanks. > Bruce In[1]:= myRule= {a___, b_List /; Length[b] > 2, c___} :> {a, Sequence @@ Thread[{First[b],Rest[b]}],c}; In[2]:= { {1,2},{3,4,5,6},{7,8} } /. myRule Out[2]={{1,2},{3,4},{3,5},{3,6},{7,8}} -- 0% de pub! Que du bonheur et des vrais adhérents ! Vous aussi inscrivez-vous sans plus tarder!! Message posté à partir de http://www.gyptis.org, BBS actif depuis 1995.