2012-05-24 42 views
0

现在我尝试使用下面的方法来筛选项目:高级NSPredicate声明

我的管理对象是这样的:

@interface MyManagedObject:NSManagedObject 

@property (nonatomic, retain) NSString *name; 

@end 

例如,名称一个目的是“ABCDEF GHIJKL公司”

当我以字符串“BCD IJK锅”或“BCD锅”等进行搜索,

(BCD是ABCDEF的子串,IJK是SUBSTR ING GHIJKL的,和平移是公司的一个子)

它应该是能够找到的对象。

我不知道如何写这个断言。我试图使用predicateWithBlock:但Core Data不支持predicateWithBlock的谓词:

我也尝试先获取所有对象,并用谓词块过滤结果。但速度非常慢,因为我在Core Data中有大约10M个对象。

所以我想问一下,我可以做到这一点的一个断言语句?非常感谢!!!

回答

0

你可以用LIKE做,如果你包含通配符*。所以,如果你有self LIKE %@, @"*BCD*IJK*pan*搜索一下就会发现它

+0

感谢rdelmar!你拯救了我的生命 – Oscar