MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Question about DeleteCases to remove list elements based on first character

  • To: mathgroup at smc.vnet.net
  • Subject: [mg124372] Re: Question about DeleteCases to remove list elements based on first character
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Tue, 17 Jan 2012 05:59:38 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

S = {"abc", ";def", "ghi", ";jkl", ";  mno", "pqr;X"};

Select[S, StringTake[#, 1] != ";" &]

{"abc", "ghi", "pqr;X"}

Cases[S, _?(StringTake[#, 1] != ";" &)]

{"abc", "ghi", "pqr;X"}

DeleteCases[S, _?(StringTake[#, 1] == ";" &)]

{"abc", "ghi", "pqr;X"}

Pick[S, StringTake[#, 1] != ";" & /@ S]

{"abc", "ghi", "pqr;X"}

% == %% == %%% == %%%%

True


Bob Hanlon

On Mon, Jan 16, 2012 at 5:06 PM, Andrew DeYoung <adeyoung at andrew.cmu.edu> wrote:
> Hi,
>
> I have a list of strings in which some elements begin with the ";"
> character and some do not.  The ";" character indicates a program
> comment, so I wish to drop all elements in the list that begin with
> the ";" character.
>
> As a simplified example, suppose I have the following list S:
>
> S = {"abc", ";def", "ghi", ";jkl", ";  mno", "pqr;X"}
>
> I wish to drop from S all elements that begin with ";".  So, I want to
> obtain:
>
> {"abc", "ghi", "pqr;X"}
>
> Will you please help me know how to do this?  Can this be done with
> DeleteCases?  For example, I tried:
>
> DeleteCases[S, StringTake[#, 1] == ";"&]
>
> and
>
> DeleteCases[S, ";" ~~ __]
>
> but I am wrong:  these do not work.  Can you please help me?
>
> Thanks so much.
>
> Andrew DeYoung
> Carnegie Mellon University
>



  • Prev by Date: Re: Question about DeleteCases to remove list elements based on first character
  • Next by Date: Signed area demo using hatching
  • Previous by thread: Re: Question about DeleteCases to remove list elements based on first character
  • Next by thread: How to remove the Null character in a Table?