专栏名称: 3033
iOS开发
目录
相关文章推荐
中金固定收益研究  ·  【中金固收·信用】中国信用债评级调整周报 ·  4 小时前  
中金固定收益研究  ·  中金·转债 | 收官阵容如何搭配——暨本月十大转债 ·  昨天  
格上财富  ·  芒格:要避免因为过去的成功做蠢事 ·  2 天前  
格上财富  ·  投资赛场上的智慧:巴菲特“等待”的艺术 ·  4 天前  
中金固定收益研究  ·  【中金固收·利率】信贷融资仍偏弱,仍需货币政 ... ·  3 天前  
51好读  ›  专栏  ›  3033

iOS实现简书的账号识别方式(正则表达式)

3033  · 掘金  ·  · 2017-12-14 00:35

正文

请到「今天看啥」查看全文


Pid: 2]; [student2 set Name: @ "dahuang" ]; [student2 set Height: 178]; [array addObject: student2]; Student *student3=[[Student alloc] init]; [student3 set Pid: 3]; [student3 set Name: @ "erhuang" ]; [student3 set Height: 188]; [array addObject: student3];

在上述的代码中,我们创建了一个可变数组,和三个小学生(-_-,不要吐槽我给他们的命名,懒得想..). 下面我们就要创建我们的谓词了,我们想要筛选出一个id 大于1 ,且升高小于180的小学生来,应该怎么做呢。

 NSPredicate *pre = [NSPredicate predicateWithFormat:
                        @" pid>1 and height<188.0"];
     int i=0;
    for(i=0;i<[array count];i++){
        Student *stu=[array objectAtIndex: i];
        //遍历数组,输出符合谓词条件的Student 的name。
        if ([pre evaluateWithObject: stu]) {
            NSLog(@"11--%@",[stu name]);
        }
    }

谓词还可以帮我们做出一些列的筛选,如下:

  //快速筛选数组内容   以及占位符的使用
    NSPredicate *pre2 = [NSPredicate predicateWithFormat:@"pid>%d",1];
    
    NSMutableArray *arrayPre2=[array filteredArrayUsingPredicate: pre2];
    
    NSLog(@"%@",[[arrayPre2 objectAtIndex: 0] name]);

字符串的处理

 //name以x开头的
    NSPredicate  *predicate3 = [NSPredicate predicateWithFormat:@"name BEGINSWITH 'x'"];

 //name以g结尾的
    NSPredicate  *predicate4 = [NSPredicate predicateWithFormat:@"name ENDSWITH 'g'"];

  //name中包含字符a的
    NSPredicate  *predicate5 = [NSPredicate predicateWithFormat:@"name CONTAINS 'a'"






请到「今天看啥」查看全文