实用小功能iOS DeveloperiOS开发技术

iOS字符串比较

2017-04-21  本文已影响3032人  莽原奔马668

在开发的过程中,经常遇到需要比较两个字符串,当然比较的方法很多,下面总结一下比较字符串的方法

一.用C语言比较:strcmp函数
char string1[] = "string!";
char string2[] = "string!";
if(strcmp(string1, string2) == 0)
{
    NSLog(@"1");
}

C中一般都是操作单个字符,不像OC有字符串对象的概念,C中需要操作一串字符,就需要用到数组.

二.用OC语言比较

1.isEqualToString方法:判断字符串是否相等

NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 isEqualToString:astring02];
NSLog(@"result:%d",result);

2.compare方法(comparer返回的三种值)

NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";    
BOOL result = [astring01 compare:astring02] == NSOrderedSame;    
NSLog(@"result:%d",result);    
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"this is a String!";
BOOL result = [astring01 compare:astring02] == NSOrderedAscending;    
NSLog(@"result:%d",result);
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02] == NSOrderedDescending;    
NSLog(@"result:%d",result);

3.不考虑大小写比较字符串

NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame;    
NSLog(@"result:%d",result);     
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02
                            options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame;    
NSLog(@"result:%d",result);
上一篇下一篇

猜你喜欢

热点阅读