使用NSPredicate来确定一个string是否等于另一个string

我有[CalCalendarStore eventPredicateWithStartDate]方法返回的CalEvents的NSArray 。 从返回的事件中,我试图只保留事件标题== @"on call" (不区分大小写)。

我可以使用下面的代码(其中“events”是一个用CalEvents填充的“NSArray”)保存标题包含 @"on call"的事件:

 NSPredicate *onCallPredicate = [NSPredicate predicateWithFormat:@"(SELF.title CONTAINS[c] 'on call')"]; [events filteredArrayUsingPredicate:onCallPredicate]; 

我已经尝试使用谓词格式string,如:

@"SELF.title == 'on call'"但这似乎不工作。

有没有更简单的方法来做到这一点?

2 Solutions collect form web for “使用NSPredicate来确定一个string是否等于另一个string”

尝试[NSPredicate predicateWithFormat:@"title ==[c] 'on call'"];

[c]使平等比较不区分大小写。)

尝试使用format @"self.title like[c] 'on call'"谓词。 以下示例代码输出2个string:

 NSArray* ar = [NSArray arrayWithObjects:@"on call", @"I'm on call", @"lala", @"On call", nil]; NSArray* filt = [ar filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self like[c] 'on call'"]]; NSLog([filt description]); //Output "on call", "On call" 
  • 详细披露之后的注解细节被按下了吗
  • UICollectionView的dynamic单元格宽度取决于标签宽度
  • 在演示过程中警告的含义!“
  • 无法实例化名为IBNSLayoutConstraint的类
  • 如何在核心数据中存储图像
  • 检测UIScrollView页面更改
  • iPhone / iPod Touch:应用程序可执行文件缺less必需的体系结构
  • Xcode预处理器输出
  • Xcode 6和embedded式框架仅在iOS8中受支持
  • 文件范围内的可变修改数组
  • 有一个可变的集合的文字语法?