我是 NSPredicates 的新手,但我知道基础知识。
这就是我的谓词现在的样子:
[NSPredicate predicateWithFormat"name contains[c] %@", searchText];
我想做的是能够创建这样的谓词(伪代码):
NSPredicate *myPredicate = [NSPredicate predicateWithBaseString"name contains[c] _ARGUMENT_"];
然后在例如循环中使用它(伪代码):
for(NSString *searchString in self.allStrings)
{
NSPredicate *myNewPredicate = [myPredicate predicateWithArgument:searchString];
//Here I do the searchOperations with my new predicate
}
我想这样做,以便我可以有一些基本谓词,然后在它们上放置参数以进行搜索。我不想再次创建我的谓词。
希望你能理解。
谢谢!
Best Answer-推荐答案 strong>
使用以下
NSPredicate *myPredicate = [NSPredicate predicateWithFormat"name contains[c] $ARGUMENT"];
for(NSString *searchString in self.allStrings)
{
NSPredicate *myNewPredicate = [myPredicate predicateWithSubstitutionVariables{@"ARGUMENT" :searchString}];
//Here I do the searchOperations with my new predicate
}
我也建议阅读这篇文章 http://nshipster.com/nspredicate/
关于ios - NSPredicate - 带参数的动态谓词,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/22710225/
|