objective-c - OR 无法解析的 objective-c nspredicates

标签 objective-c ios nspredicate

有人知道为什么这会在运行时出现“无法解析格式字符串”错误吗?

[wordListArray filterUsingPredicate:[NSPredicate predicateWithFormat:@"pinyin contains[cd] %@ OR pinyin contains[cd] %@ OR BEGINSWITH[cd] %@", [NSString stringWithFormat:@" %@1", searchTerm], [NSString stringWithFormat:@" %@2", searchTerm], searchTerm]];

出于某种原因,每当我做复杂的谓词(即那些带有 OR 的谓词)时,我都会得到这个。我认为 nspredicate 应该能够处理这个?

最佳答案

您在 "BEGINSWITH[cd] %@" 之前遗漏了一些搜索关键字。添加它并检查它是否仍然显示此错误。可能你正在研究类似的东西,

@"(拼音包含[cd] %@) OR (拼音包含[cd] %@) OR (拼音BEGINSWITH[cd] %@)"

关于objective-c - OR 无法解析的 objective-c nspredicates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13599286/

相关文章:

iphone - 已弃用的 NSURLConnection 方法,是否有替代方法?

objective-c - NSString 通过删除初始零?

objective-c - 在 Objective-C 中使用类别覆盖方法

ios - 用 TextField 中的小数分隔符替换逗号

iphone - 计算 NSArray 中 NSDictionary 中的值

ios - 基于键对 NSMutableArray 进行排序,谓词不起作用?

ios - NSPredicate 忽略字符串中的数字 [拼音]

ios - 有没有一种方法可以将 coredata bool 属性设置为只允许将 1 个对象设置为是

c# - CS1061 错误 Xamarin/Visual Studio

ios - 如何使用 Rxswift 订阅 UISwitch 的值更改控件事件