Re: Position different in 5.0 and 5.1?
- To: mathgroup at smc.vnet.net
- Subject: [mg56108] Re: Position different in 5.0 and 5.1?
- From: Peter Pein <petsie at arcor.de>
- Date: Fri, 15 Apr 2005 04:48:23 -0400 (EDT)
- References: <d3lraa$s6b$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
J R Gog wrote:
> I've recently upgraded from 5.1 from 5.0 and have found that some of my old
> notebooks don't seem to work. I think I have the essence of what I'm utterly
> confussed about in this example:
> Position[{"asd", "dsa"}, x_ /; (StringTake[x, 1] == "a")]
>
> What I want is the position of list entries which have first character "a".
> In 5.0, this line works. In 5.1, I get an error that StringTake is being fed
> a string.
>
> I can't find any documentation that explains what has changed to have this
> effect. I'm sure I've missed something obvious, but if anyone can explain to
> me what has changed, it would be very helpful indeed. I know I can do
> everything some other way, but I need to know exactly what old stuff I need
> to change!
>
>
>
> Thanks
>
>
>
> Julia Gog
>
>
x_ shall match strings only:
Position[{"asd", "dsa"}, x_String /; (StringTake[x, 1] == "a")]
or avoid evaluation of StringTake[List,1] by typing
Position[{"asd", "dsa"}, x_ /; (StringTake[x, 1] == "a"), Heads -> False]
--
Peter Pein
Berlin