MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: More robust pattern based replacement rules?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg120807] Re: More robust pattern based replacement rules?
  • From: Leonid Shifrin <lshifr at gmail.com>
  • Date: Wed, 10 Aug 2011 06:49:46 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201108091120.HAA15815@smc.vnet.net>

You can do something like this:

rl = (a b v___ + c d w___) /; v == -w :> e v

So that

In[121]:= a b - c d /. rl

Out[121]= e

In[122]:= -a b + c d /. rl

Out[122]= -e


Regards,
Leonid



On Tue, Aug 9, 2011 at 3:20 PM, Irretrev Unable <irdeva_ble at yahoo.com>wrote:

> I'm trying to come up with a method for creating somewhat more robust
> pattern based replacement rules.  I've cooked up the following simple
> example:
>
> simpRule = a b v___ - c d v___ -> e v
>
> a b - c d /. simpRule
>
> produces e
>
> - a b + c d /. simpRule
>
> produces - a b + c d
>
> Is there a way to write one simpRule that can handle both cases?
>
> (The actual rule I'm trying to create has to match more terms with a
> leading coefficient that is more complicated than a simple minus sign, but I
> figure that for an initial post I should stick with a simple question.)
>
> Thanks in advance.
>
>




  • Prev by Date: Re: Just another Mathematica "Gotcha"
  • Next by Date: Re: Just another Mathematica "Gotcha"
  • Previous by thread: More robust pattern based replacement rules?
  • Next by thread: Re: More robust pattern based replacement rules?