Re: perplexed by blank sequence in pattern replacement

• To: mathgroup at smc.vnet.net
• Subject: [mg68726] Re: [mg68674] perplexed by blank sequence in pattern replacement
• From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
• Date: Thu, 17 Aug 2006 04:18:33 -0400 (EDT)
• References: <200608160736.DAA06103@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```On 16 Aug 2006, at 09:36, Blake wrote:

> Dear MathGroup:
>
> I have been blithely using blank sequences in pattern matching for
> some
> time. In persuit of a bug in a package of mine, I was quite alarmed to
> find that I don't really understand how to use the blank sequence, as
> expressed in the following simplified example:
>
> In[1]:=Replace[a*b*c,Times[mysequence__]:>{mysequence}]
>
> Out[1]={a b c}
>
> I expected Out[1]={a,b,c}, from a naieve reading of the full form of
> a*b*c
>
> In[2]:=FullForm[a*b*c]
>
> Out[2]//FullForm=Times[a,b,c]
>
> Will someone PLEASE tell me why In[1] does not yield the results I
> expected? (I can readily use a work-around, what I am concerned
> with is
> a correct understanding of pattern matching).
>
> Blake Laing
> thesis slave
> University of Oklahoma
>

Just observe that:

Times[mysequence__]

mysequence__

hence the correct thing to do is:

Replace[Times[a,b,c],HoldPattern[Times[mysequence__]]:>{mysequence}]

{a,b,c}

Andrzej Kozlowski

```

• Prev by Date: Re: perplexed by blank sequence in pattern replacement
• Next by Date: Re: product formula in mathematica
• Previous by thread: Re: perplexed by blank sequence in pattern replacement
• Next by thread: Re: perplexed by blank sequence in pattern replacement