DeleteCases[expr, pattern] removes all elements of expr which match pattern.
DeleteCases[expr, pattern, levspec] removes all parts of expr on levels specified by levspec which match pattern.
DeleteCases[expr, pattern, levspec, n] removes the first n parts of expr which match pattern.
Example: DeleteCases[1, a, 2, b, _Integer] .
With the option Heads -> True, you can delete heads with DeleteCases. Deleting the head of a particular element in an expression is equivalent to applying FlattenAt to the expression at that point.
Example: DeleteCases[1, f[2, 3], 4, f, 2, Heads -> True] .
Level specifications are described in Section A.3.6.
See The Mathematica Book: Section 2.3.2.
See also: Cases, ReplaceAll, Delete.