This is documentation for Mathematica 6, which was
based on an earlier version of the Wolfram Language.
 Mathematica Tutorial Functions »|Tutorials »

# Manipulating Symbols and Contexts by Name

 Symbol["name"] construct a symbol with a given name SymbolName[symb] find the name of a symbol

Converting between symbols and their names.

Here is the symbol x.
 Out[1]//InputForm=
Its name is a string.
 Out[2]//InputForm=
This gives the symbol x again.
 Out[3]//InputForm=
Once you have made an assignment such as x=2, then whenever x is evaluated, it is replaced by 2. Sometimes, however, you may want to continue to refer to x itself, without immediately getting the value of x.
You can do this by referring to x by name. The name of the symbol x is the string "x", and even though x itself may be replaced by a value, the string "x" will always stay the same.
The names of the symbols x and xp are the strings "x" and "xp".
 Out[4]//InputForm=
This assigns a value to x.
 Out[5]=
Whenever you enter x it is now replaced by 2.
 Out[6]//InputForm=
The name "x" is not affected, however.
 Out[7]//InputForm=
 NameQ["form"] test whether any symbol has a name which matches form Names["form"] give a list of all symbol names which match form Contexts["form`"] give a list of all context names which match form

Referring to symbols and contexts by name.

x and xp are symbols that have been created in this Mathematica session; xpp is not.
 Out[8]=
You can specify the form of symbol names using string patterns of the kind discussed in "String Patterns". "x*" stands, for example, for all names that start with x.
This gives a list of all symbol names in this Mathematica session that begin with x.
 Out[9]//InputForm=
These names correspond to built-in functions in Mathematica.
 Out[10]//InputForm=
 Out[11]=
 Clear["form"] clear the values of all symbols whose names match form Clear["context`*"] clear the values of all symbols in the specified context Remove["form"] remove completely all symbols whose names match form Remove["context`*"] remove completely all symbols in the specified context

Getting rid of symbols by name.

 This clears the values of all symbols whose names start with x.
The name "x" is still known, however.
 Out[13]=
But the value of x has been cleared.
 Out[14]=