NSPredicatetestingNULL和空白string

我有一个NSArray并需要筛选出任何string为null或者更确切地说,有''(空string)。 我怎么做? 我试过了:

 NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"(name!=nil)"]; 

但似乎并不奏效。 或者,也许它有,但有不同种类的空…

如果你不使用核心数据,你可以这样做:

 NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name.length > 0"]; 

如果string为空,则会失败(因为0 == 0 )。 同样,如果namenil ,它也将失败,因为[nil length] == 0

我认为这应该工作:

 NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name!=nil AND name!=''"]; 
  NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name!=NULL"]; 

这个谓词为我工作:

 [NSPredicate predicateWithFormat:@"(%K== nil) OR %K.length == 0", @"imageUrl", @"imageUrl"]