Re: Deleting expressions containing a certain head
- To: mathgroup at smc.vnet.net
- Subject: [mg126005] Re: Deleting expressions containing a certain head
- From: Ray Koopman <koopman at sfu.ca>
- Date: Thu, 12 Apr 2012 02:36:47 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jm50e9$2q0$1@smc.vnet.net>
On Apr 11, 3:26 pm, Brentt <brenttnew... at gmail.com> wrote:
> Hello, I have a list of expressions, and I am trying to use DeleteCases to
> delete expressions in the list which contain a certain head *anywhere* in
> the expression. Setting the levelspec for DeleteCases to Infinity almost
> works, except I want to delete the entire expression containing the head
> from the list as opposed to just the head itself while leaving the rest of
> the expression in the list.
>
> e.g.
> I want this
> DeleteCases[{2^(Complex[2,3])+3 , 2 ,3x }, Complex[_,_], Infinity ]
>
> to output this
> {2,3x}
> Getting rid of any expression that has a complex number in it.
>
> How does one go about this?
Cases[{2^(Complex[2,3])+3 , 2 , 3x }, _?(FreeQ[#,Complex]&)]
{2, 3 x}