NSPredicatetestingNULL和空白string
我有一个NSArray
并需要筛选出任何string为null或者更确切地说,有''(空string)。 我怎么做? 我试过了:
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"(name!=nil)"];
但似乎并不奏效。 或者,也许它有,但有不同种类的空…
如果你不使用核心数据,你可以这样做:
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name.length > 0"];
如果string为空,则会失败(因为0 == 0
)。 同样,如果name
是nil
,它也将失败,因为[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"]