Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2005
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2005

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

Search the Archive

Re: how to find n in expression x^n using a pattern?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg58457] Re: [mg58426] how to find n in expression x^n using a pattern?
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Sun, 3 Jul 2005 03:57:09 -0400 (EDT)
  • Reply-to: hanlonr at cox.net
  • Sender: owner-wri-mathgroup at wolfram.com

p=x (x^2+2);

Make the power Optional

p/.x^Optional[n_](any_)->n

1

This is abbreviated as ( n_. )

p/.x^n_.(any_)->n

1


Bob Hanlon

> 
> From: "steve" <nma124 at hotmail.com>
To: mathgroup at smc.vnet.net
> Date: 2005/07/02 Sat AM 04:06:25 EDT
> Subject: [mg58457] [mg58426] how to find n in expression x^n using a pattern?
> 
> I am learning patterns in Mathemtica, and I thought this will be easy.
> 
> suppose you are given a factored expression, such as x^n(x^2+2)(x^3+4)
> where 'n' above can be any number, including zero (i.e. there is no
> (x) as a separate factor). I need to find 'n', which can be
> 0,1,2,3,..etc..
> 
> i.e I need to find the power of the factor x by itself if it exist in
> the expression. not (x^n+anything), just (x^n) byitself.
> 
> For example
> 
> p= x (x^2+2)  ---> here n=1
> 
> I tried this
> 
> p /. x^n_(any_) -> n
> 
> This did not work since x^1 does not match pattern x^n_.  I would have
> worked if I had x^2 (x^3+2) for example.
> 
> I know that I need to use something like  x^_:1  to make it match x,
> which
> is really x^1, but I do not know how to use it in a replacement rule,
> becuase
> when I write
> 
> p /. (x^n_:1)(any_) -> n
> 
> it is an error.
> 
> If I write
> 
> p /. (x^_:1)(any_) -> _
> 
> I do not get back anything.
> 
> Next I tried the Cases command, and again had no luck.
> 
> The main problem is that Mathematica makes a difference between
> x, x^1, and x^2, etc... when it comes to matching with pattern x^n_
> 
> any idea how to do this?
> thanks,
> steve
> 
> 


  • Prev by Date: Re: how to find n in expression x^n using a pattern?
  • Next by Date: Re: Re: a question about the UnitStep function
  • Previous by thread: Re: how to find n in expression x^n using a pattern?
  • Next by thread: Re: how to find n in expression x^n using a pattern?