- (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask range:(NSRange)compareRange locale:(nullable id)locale;

compare:(NSString *)

传入一个需要比较的字符串。

例如 [value compare:@"1234567890"],返回 NSOrderedSame。

options:(NSStringCompareOptions)

传入 NSStringCompareOptions 枚举的值

enum{

NSCaseInsensitiveSearch = 1,//不区分大小写比较

NSLiteralSearch = 2,//区分大小写比较

NSBackwardsSearch = 4,//从字符串末尾开始搜索

NSAnchoredSearch = 8,//搜索限制范围的字符串

NSNumbericSearch = 64//按照字符串里的数字为依据,算出顺序。例如 Foo2.txt < Foo7.txt < Foo25.txt

//以下定义高于 mac os 10.5 或者高于 iphone 2.0 可用

,

NSDiacriticInsensitiveSearch = 128,//忽略 "-" 符号的比较

NSWidthInsensitiveSearch = 256,//忽略字符串的长度,比较出结果

NSForcedOrderingSearch = 512//忽略不区分大小写比较的选项,并强制返回 NSOrderedAscending 或者 NSOrderedDescending

//以下定义高于 iphone 3.2 可用

,

NSRegularExpressionSearch = 1024//只能应用于 rangeOfString:..., stringByReplacingOccurrencesOfString:...和 replaceOccurrencesOfString:... 方法。使用通用兼容的比较方法,如果设置此项,可以去掉 NSCaseInsensitiveSearch 和 NSAnchoredSearch

}

range:(NSRange)

比较字符串的范围

结构变量:

location: 需要比较的字串起始位置(以0为起始)

length: 需要比较的字串长度

返回值:

typedef enum _NSComparisonResult {
     NSOrderedAscending = -1,    // < 升序
     NSOrderedSame,              // = 等于
     NSOrderedDescending   // > 降序
} NSComparisonResult;

例如,根据友盟自动更新判断版本号,升序提示更新,否则不提示

//判断NSUserDefaults忽略版本跟version是否相同

if ([[[NSUserDefaults standardUserDefaults] objectForKey:hUMtypeVersion] isEqualToString:dict[@"version"]])

{

return;

}

//不相同 判断version 是否等于 当前版本

if ([CFBundleShortVersionString compare:dict[@"version"] options:NSNumericSearch] != NSOrderedAscending)            //升序

{

return;

}

最新文章

  1. 根据异常处理对 Java 方法的层次分类
  2. 《C#编程》
  3. tomcat使用线程池配置高并发连接
  4. EntityFramework_MVC4中EF5 新手入门教程之二 ---2.执行基本的 CRUD 功能
  5. linux用户配置和用户权限
  6. always NetWork Performance measure Tools
  7. jquery css 简单笔记
  8. FireMonkey消息机制
  9. 【HDOJ】1109 Run Away
  10. Android开发中用到的框架、库介绍
  11. sql防注入代码
  12. C# 7 局部函数剖析
  13. ResNet
  14. proc文件系统探索 之 以数字命名的目录
  15. FFT Cheetsheet
  16. eclipse工作区(workspace)常用设置(preferences)
  17. Linux内核分析作业 NO.4
  18. Windows下 ffmpeg + labelImg 提取视频帧 得到图片集 并 标注图片 来 构造数据集
  19. 【office2010】office2010安装问题的解决方案。
  20. JSP学习笔记(五):日期处理、页面重定向、点击量统计、自动刷新和发送邮件

热门文章

  1. jQuery MiniUI 开发指南+API组件参考手册
  2. X-Cart 学习笔记(一)了解和安装X-Cart
  3. 使用gson解析,生成Json
  4. DOM编程(每天有学习一点篇)
  5. EXT学习之——Ext两个js之间的传参
  6. VS调试技巧
  7. Ms sql pivot unpivot
  8. AbstractQueueSynchronizer
  9. .NET 扩展方法
  10. Python之路【第十六篇】:Django【基础篇】