Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > Core Language > Rules & Patterns > Pattern Matching Functions >

MemberQ

MemberQ[list, form]
returns True if an element of list matches form, and False otherwise.
MemberQ[list, form, levelspec]
tests all parts of list specified by levelspec.
  • form can be a pattern.
  • The first argument of MemberQ can have any head, not necessarily List.
  • MemberQ[list, form] immediately tests whether any expression in list matches form; Element[x, dom] asserts that x is an element of the symbolic domain dom.
  • MemberQ uses standard level specifications:
nlevels 1 through n
Infinitylevels 1 through Infinity
{n}level n only
{n1,n2}levels n1 through n2
  • The default value for levelspec in MemberQ is {1}.
  • A positive level n consists of all parts of expr specified by n indices.
  • A negative level -n consists of all parts of expr with depth n.
  • Level -1 consists of numbers, symbols and other objects that do not have subparts.
  • Level 0 corresponds to the whole expression.
  • With the option setting Heads->True, MemberQ looks at heads of expressions, and their parts.
Test whether 2 is a member of a list:
Test whether 2 is a member of a list:
In[1]:=
Click for copyable input
Out[1]=
MemberQ works with patterns:
Test down to level 2:
MemberQ normally only tests level 1:
Test whether 2^i is ever equal to 1 modulo 7:
MemberQ tests for structural matches, not numerical equality:
MemberQ does not test for subsequences:
FreeQ does:
MemberQ by default only operates at level 1:
Include level 2:
New in 1 | Last modified in 4
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team