Re: String Deletion
- To: mathgroup at smc.vnet.net
- Subject: [mg121507] Re: String Deletion
- From: "Oleksandr Rasputinov" <oleksandr_rasputinov at hmamail.com>
- Date: Sun, 18 Sep 2011 04:09:40 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <j51sst$pfv$1@smc.vnet.net>
On Sat, 17 Sep 2011 11:30:53 +0100, Don <donabc at comcast.net> wrote: > Given a simple list of strings: > > list = List["Z:XBREG","Z:XBREH","Z:XBREI","Z:ZZ6P","Z:ZZ6Q","aye"] > > how does one delete all the strings with a colon (:) anywhere in the > string? > > DeleteCases[list, ___:___] looks very logical and should work, > but of course it doesn't . > > Also, there is a StringCases function which would seem > to correspond with the Cases function. There is a > DeleteCases function but no string counterpart, namely, > DeleteString function. Any reason for this? > > Thanks in advance. > ___:___ is not a particularly meaningful pattern. Its FullForm makes this clear: Optional[BlankNullSequence[],BlankNullSequence[]] To achieve what you want, you could try something like the following: In[1] := list = {"Z:XBREG", "Z:XBREH", "Z:XBREI", "Z:ZZ6P", "Z:ZZ6Q", "aye"}; In[2] := Select[list, StringFreeQ[#, ":"] &] Out[2] = {"aye"}