黑马程序员技术交流社区

标题: 【iOS技术分享】NSPredicate有什么用?正则就需要它 [打印本页]

作者: Simpon    时间: 2016-5-10 10:13
标题: 【iOS技术分享】NSPredicate有什么用?正则就需要它
本帖最后由 Simpon 于 2016-10-27 10:31 编辑


简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。
定义(最常用到的方法):
  1. NSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...];
复制代码
Format:
(1)比较运算符>,<,==,>=,<=,!=
可用于数值及字符串
例:@"number > 100"
(2)范围运算符:IN、BETWEEN
例:@"number BETWEEN {1,5}"
      @"address IN {'shanghai','beijing'}"
(3)字符串本身:SELF
例:@“SELF == ‘APPLE’"
(4)字符串相关:BEGINSWITH、ENDSWITH、CONTAINS
例:@"name CONTAIN[cd] 'ang'"   //包含某个字符串
       @"name BEGINSWITH[c] 'sh'"     //以某个字符串开头
       @"name ENDSWITH[d] 'ang'"      //以某个字符串结束
        注:[c]不区分大小写[d]不区分发音符号即没有重音符号[cd]既不区分大小写,也不区分发音符号。
(5)通配符:LIKE
例:@"name LIKE[cd] '*er*'"    //*代表通配符,Like也接受[cd].
       @"name LIKE[cd] '???er*'"
(6)正则表达式:MATCHES
例:NSString *regex = @"^A.+e$";   //以A开头,e结尾
      @"name MATCHES %@",regex

实际应用:



精华推荐:
黑马程序员:为苹果与iOS开发者的前景正名
与君共勉 --- 记黑马22期同学成长经验。
【持续更新】2016年最全最新的iOS视频+软件+源码+面试/技术
关于iOS 10最新的课程视频及demo第三弹,火速发布了


作者: luffy99    时间: 2016-5-17 16:46
楼主强强强
作者: heima_heimahaha    时间: 2016-5-20 20:46
{:8_168:}{:8_168:}{:8_168:
作者: hexintao    时间: 2016-6-19 23:39
大声膜拜,风向标的存在啊
作者: wangjun126    时间: 2016-7-2 17:14
  学习了
作者: LIUHENG0408    时间: 2016-7-6 03:47
太好了真的
作者: LIUHENG0408    时间: 2016-7-6 03:48
色色色色
作者: 云飘雾散    时间: 2016-7-17 00:30
正则表达,看看
作者: Theshy    时间: 2016-7-19 23:26
看看~~~~~~~~~~~~~~
作者: huguozhang    时间: 2016-8-6 11:50
学习了~
作者: da11989da    时间: 2016-9-22 12:09
666666666666666
作者: 有无相生    时间: 2016-11-4 17:33
就算不懂也要支持啊
作者: weiboyuan    时间: 2016-11-23 10:45
looklooklook
作者: vivi2wen94    时间: 2017-4-24 20:48
棒棒的!!!!!!!!
作者: Chris_Wu    时间: 2017-6-19 09:17
戳开看看

作者: niesiyang    时间: 2018-4-25 15:31
0.0。学习了、、
作者: baby14    时间: 2018-7-16 07:46
多谢分享
作者: 小小怪下士    时间: 2020-3-6 05:46
特地过来打卡




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2