我有一个谓词,我需要过滤掉一个属性。该属性的名称为location
,此属性可能包含none
,one
个more
个值。那么我怎么能写谓词
例如,如果医院位置可能有0个或更多值。它可能没有位置,或1(纽约)或更多(纽约,加利福尼亚,德克萨斯州)。所以基于数组上的值我怎么能写谓词。
NSArray *filteredHospitalArr= [hospitalArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"location= %@ ", [hospitalObject objectAtIndexPath:0]]]; // ???
< - 在这个例子中说我们有3个位置用于这个医院位置。我怎么能写这个谓词。
另请注意,位置数可能会更改(可能没有,一个或多个值)
编辑:
假设是否要求用户为特定医院选择他/她的过滤条件。他/她会选择一个或多个位置。那么我如何编写谓词以满足他/她的过滤器要求。 (用户可能输入也可能不输入过滤条件,或输入多个首选位置)。那么我怎么能根据这个场景写出来呢
答案 0 :(得分:1)
答案 1 :(得分:1)
您想过滤掉没有地点的医院吗?
[NSPredicate predicateWithFormat:@"locations.@count != 0"]
更新:可能更像是
@"ANY locations IN %@", myArrayOfLocations"