pattern matching all list elements but last
- To: mathgroup at smc.vnet.net
- Subject: [mg54539] pattern matching all list elements but last
- From: "Trevor Baca" <trevorbaca at gmail.com>
- Date: Tue, 22 Feb 2005 04:24:35 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
hi mathgroup folks,
let's say ls looks like this:
ls = {{1}, {2,3}, {4,5,6}, {7,8,9,10}}
is there an elegant way to match all integers *except the last
(rightmost)* in each list and, say, add 100 to each?
ls /. <magic replacement rule goes here>
or
ls //. <magic replacement rule goes here>
to give {{1}, {102,3}, {104,105,6}, {107,108,109,10}}?
this works:
Release[ ls //. {a___, b_Integer, c___, z_Integer} :> {a, Hold[b +
100], c, z} ]
but is there a more elegant pattern, possibly one that avoids the
Hold-Release trick?
trevor.
- Follow-Ups:
- Re: pattern matching all list elements but last
- From: yehuda ben-shimol <bsyehuda@gmail.com>
- Re: pattern matching all list elements but last
- From: Andrzej Kozlowski <akozlowski@gmail.com>
- Re: pattern matching all list elements but last
- From: János <janos.lobb@yale.edu>
- Re: pattern matching all list elements but last
- From: DrBob <drbob@bigfoot.com>
- Re: pattern matching all list elements but last