zoukankan      html  css  js  c++  java
  • NSPredicate 的使用

     

    NSPredicate:对self每个对象通过谓词进行筛选,判断是否与条件相匹配。作用相当于数据库的过滤取。主要用于从集合中分拣出符合条件的对象,也可以用于字符串的正则匹配

    第一、contains 判断

             NSArray *array = [[ NSArray alloc ] initWithObjects : @"beijing" ,@"shanghai" , @"guangzou" , @"wuhan" , nil ];

            NSString *string = @"ang" ;

            NSPredicate *predicate=[ NSPredicate predicateWithFormat : @"SELF CONTAINS %@" ,string];

            NSArray *result=[array filteredArrayUsingPredicate :predicate];

            NSLog ( @"%@" ,result);

    第二、in 判断

             NSArray *array = [[ NSArray alloc ] initWithObjects : @"beijing" ,@"shanghai" , @"guangzou" , @"wuhan" , nil ];

            NSArray *fieltArr=[[ NSArray alloc ] initWithObjects : @"welcome" , @"to" ,@"beijing" , nil ];

            NSPredicate *predicate=[ NSPredicate predicateWithFormat : @"SELF in %@" ,fieltArr];

            NSArray *result=[array filteredArrayUsingPredicate :predicate];

            NSLog ( @"%@" ,result);

    第三、like运算

             NSString *str= @"badger" ;

            NSString *pattern= @"b??d*" ;

            NSPredicate *predicate=[ NSPredicate predicateWithFormat : @"SELF LIKE %@" ,pattern];

            if ([predicate evaluateWithObject :str])

            {

                NSLog ( @"YES" );

            } else

            {

                NSLog ( @"NO" );

            }

    第四、正则表达式

             NSString *pattern= @".*\_\d{3,5}×\d{3,5}.jpg$" ;

            NSPredicate *predicate=[ NSPredicate predicateWithFormat : @"SELF matches %@" ,pattern];

            NSString *str= @"fdas_300×50009.jpg" ;

            if ([predicate evaluateWithObject :str])

            {

                NSLog ( @"YES" );

            } else

            {

                NSLog ( @"NO" );

            }

  • 相关阅读:
    为jquery添加扩展标准思路
    linux 相关命令
    通过设置PHPSESSID保存到cookie实现免登录
    CentOs7 配置nfs 系统
    ajax 异步 跨域上传图片
    php下载并安装pear脚本
    php基于swoole扩展的WebSocket
    php冒泡排序
    微信公众号验证TOKEN
    CSS清浮动处理(Clear与BFC)
  • 原文地址:https://www.cnblogs.com/wuwangchuxin/p/3701694.html
Copyright © 2011-2022 走看看