J'ai un NSArray
et ai besoin de filterr toutes les strings qui sont nulles ou plutôt, ont '' (string vide). Comment je fais ça? J'ai essayé de faire:
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"(name!=nil)"];
mais cela ne semble pas fonctionner. Ou peut-être que oui, mais il y a différents types de null …
Si vous n'utilisez pas datatables de base, vous pouvez:
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name.length > 0"];
Si la string est vide, cela échouera (car 0 == 0
). De même, si le name
est nil
, il échouera également, car [nil length] == 0
.
Je pense que cela devrait fonctionner:
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name!=nil AND name!=''"];
NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"name!=NULL"];
Ce prédicat a fonctionné pour moi:
[NSPredicate predicateWithFormat:@"(%K== nil) OR %K.length == 0", @"imageUrl", @"imageUrl"]