0

Possible Duplicate:
Determine whether some expression contains a given symbol

Let's say I have some expression:

sample = {1, 1/q, f[m]}

And I want to check it if it has the symbol m in it.

My question: Is there a clean or fast way of checking if m is in the equation?


What I came up with so far:

Do[StringFreeQ[ToString[sample], "m"], {i, 300}] // AbsoluteTiming
(* {0.0120007, Null} *)

and

Do[(sample /. m -> Unique[]) === (sample /. m -> Unique[]), {i, 300}] // AbsoluteTiming
(* {0.0100005, Null} *)

These solutions work, but I feel like there might be a faster, functional way of doing this.

VF1
  • 4,702
  • 23
  • 31

1 Answers1

0

How about:

sample = {1, 1/q, ff[f[m]]};
FreeQ[sample, m]
(* False *)