NSPredicate格式

学士学位

我想NSArray使用usingNSPredicate predicateWithFormat:方法进行过滤我有一些变量,我想以这种格式多次使用。我不想写几次。这是一个例子:

NSString *someText = @"some text";
NSString *str = [NSString stringWithFormat:
          @"(field1 CONTAINS[cd] %1$@) OR (field2 CONTAINS[cd] %1$@)", someText];
NSLog(@"%@", str);
// prints : (field1 CONTAINS[cd] some text) OR (field2 CONTAINS[cd] some text)

所以它与 NSString stringWithFormat:

有人可以解释为什么它不工作NSPredicate predicateWithFormat:,如何解决?

[someArray filteredArrayUsingPredicate:
     [NSPredicate predicateWithFormat:
         @"(field1 CONTAINS[cd] %1$@) OR (field2 CONTAINS[cd] %1$@)", 
     someText]];

我收到此异常:

由于未捕获的异常“ NSInvalidArgumentException”而终止应用程序,原因:“无法解析格式字符串 "(field1 CONTAINS[cd] %1$@) OR (field2 CONTAINS[cd] %1$@)"'

提前致谢

斯帕萨斯

NSPredicate解析器不因可能接受位置说明符$用于声明变量的迹象。顺便说一句,使用变量可以解决您的问题。

NSString *someText = @"some text";
NSPredicate *predicate = [NSPredicate predicateWithFormat:
         @"(field1 CONTAINS[cd] $someText) OR (field2 CONTAINS[cd] $someText)"]];
NSDictionary *varSub = [NSDictionary dictionaryWithObject:someText forKey:@"someText"];
NSPredicate *filterPredicate = [predicate predicateWithSubstitutionVariables:varSub];

尽管它可能比重新键入变量名称短很多...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

NSPredicate:无法解析格式字符串

来自分类Dev

如何在Swift中为PHFetchOptions格式化NSPredicate?

来自分类Dev

使用NSPredicate格式化变量时出现异常

来自分类Dev

NSPredicate格式的第二个参数为“无效谓词:nil RHS”

来自分类Dev

NSPredicate格式,用于检查2个数组并过滤这些数组

来自分类Dev

NSPredicate格式的第二个参数为“无效谓词:nil RHS”

来自分类Dev

NSPredicate函数

来自分类Dev

NSFetchResultsController的NSPredicate

来自分类Dev

Nspredicate之间

来自分类Dev

NSPredicate创建

来自分类Dev

斯威夫特-NSPredicate

来自分类Dev

NSFetchResultsController的NSPredicate

来自分类Dev

NSPredicate 差异

来自分类Dev

NSPRedicate valueForUndefinedKey

来自分类Dev

在各个视图之间使用NSFetchedResultsController快速编辑相关的Core Data对象/如何格式化NSPredicate并将其与块一起使用?

来自分类Dev

NSPredicate返回空数组

来自分类Dev

NSPredicate,executeFetchRequest崩溃

来自分类Dev

NSPredicate完全匹配

来自分类Dev

NSPredicate with Multiple Conditions

来自分类Dev

NSPredicate SUBQUERY聚合

来自分类Dev

NSPredicate - Dynamic predicate with arguments

来自分类Dev

NSPredicate for SQL'赞'

来自分类Dev

解析和更改NSPredicate

来自分类Dev

NSPredicate用于字典数组

来自分类Dev

iOS:CHCSVParser和NSPredicate?

来自分类Dev

NSPredicate状态还原

来自分类Dev

快速NSPredicate逻辑或

来自分类Dev

使用NSPredicate过滤数组

来自分类Dev

子查询中的NSPredicate