I'm filtering an array of dictionaries, my usual procedure for doing this is:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"MyKey CONTAINS[cd] %@", searchString]; NSArray *filteredArray = [[self dataArray] filteredArrayUsingPredicate:predicate];

So your comment about lowercase keys is only true for KVC compliance (filtering non-plist objects), not when filtering arrays of dictionaries, where numbers ARE valid keys. But NSPredicate doesn't seem to think so.

Ben


On Mar 23, 2009, at 5:48 PM, Kyle Sluder wrote:

On Mon, Mar 23, 2009 at 5:18 PM, Ben Einstein <beinst...@me.com> wrote:
So is there any way to filter with numberic keys? I guess I could convert
all they keys to strings? Urgh....

First, arrays don't have keys.  I'm assuming you mean you need to
filter the items based on values for keypaths off those objects.

And no, numbers are not valid keys.  Keys must begin with a lowercase
letter: http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueCoding/Concepts/BasicPrinciples.html#/ /apple_ref/doc/uid/20002170-183455

--Kyle Sluder

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to