NSpredicate

作者: 墨_辰 | 来源:发表于2018-06-25 14:11 被阅读1次

用途:谓词,可以指定过滤器的条件,用于对集合里面的元素进行筛选;也可以定义模糊查询的条件,用于模糊查询。类似SQL中的where。

用法:

//创建NSPredicate对象 并定义查询条件
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"age>20"];
//使用数组的filteredArrayUsingPredicate方法 获取符合我们指定条件的对象
self.datas =   [[self.datas filteredArrayUsingPredicate:predicate] mutableCopy]; 

相关词:
<,>,==,<=,>=,!=;

//IN:查找与array交集的元素。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF IN%@“,array];
//BETWEEN:查找1~20内的数字。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF BETWEEN{1,20}”];

字符串相关词:
BEGINSWITH :以某个字符串开头
ENDSWITH : 以某个字符串结尾
CONTAINS :包含某个字符串
LIKE:与通配符?*一起用;

//查询出以a这个字符开头的字符串,[cd]->c表示不区分大小写,d表示不区分发音符号
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF BEGINSWITH[cd] 'a' "];

多个条件通过复合符号AND(&&),OR(||),NOT(!)连接。

相关文章

网友评论

    本文标题:NSpredicate

    本文链接:https://www.haomeiwen.com/subject/xokyyftx.html