```objective// 忽略大小写进行比较,返回值与 compare 一样
result = [str1 caseInsensitiveCompare:str2];
if (result == NSOrderedAscending) {
NSLog(@"右边 > 左边");
} else if(result == NSOrderedSame){
NSLog(@"内容相同");
} else if (result == NSOrderedDescending){
NSLog(@"左边 > 右边");
}
// 获取拓展名,不带.
NSString *str2 = @"Users/CentralPerk/Desktop/test.txt";
NSLog(@"%@", [str2 pathExtension]); // 添加拓展名,不需要带.
NSLog(@"%@", [str2 stringByAppendingPathExtension:@"mp3"]); // 删除拓展名,带.一块删除
NSLog(@"%@", [str2 stringByDeletingPathExtension]);
```
```objective-c
// 字符串截取
NSString *str = @"123456789";
NSLog(@"%@", [str substringFromIndex:3]);
NSLog(@"%@", [str substringToIndex:6]);
NSLog(@"%@", [str substringWithRange:NSMakeRange(3, 3)]);
// 用指定字符串分割字符串,返回一个数组
NSArray *array = @[@"1,2,3,4,5,6" componentsSeparatedByString:@","];
NSLog(@"%@", array);
// 将数组中的字符串组合成一个文件路径
NSMutableArray *components = [NSMutableArray array];
[components addObject:@"Users"];
[components addObject:@"CentralPerk"];
[components addObject:@"Desktop"];
NSString *path = [NSString pathWithComponents:components];
NSLog(@"%@", path); // Users/CentralPerk/Desktop
// 将一个路径分割成一个数组
NSArray *array1 = [path pathComponents];
NSLog(@"%@", array1);
// 判断是否为绝对路径(依据:是否以'/'开始)
path = @"/Users/CentralPerk/Desktop";
NSLog(@"%i", [path isAbsolutePath]); // 0 (否)
// 获取最后一个目录
NSLog(@"%@", [path lastPathComponent]); // Desktop
// 删除最后一个目录
NSLog(@"%@", [path stringByDeletingLastPathComponent]); // Users/CentralPerk/
// 拼接一个目录
NSLog(@"%@", [path stringByAppendingPathComponent:@"aaa"]); // Users/CentralPerk/Desktop/aaa
NSLog(@"%@", [path stringByAppendingString:@"aaa"]); // Users/CentralPerk/Desktopaaa
NSLog(@"%@", [path stringByAppendingFormat:@"%@%@", @"b", @"c"]); // Users/CentralPerk/Desktopbc
```
要查看一个字符串中是否包含另一个字符串,可以使用`rangeOfString:`方法。如果返回的`location`不等于`NSNotFound`,则表示找到了指定的字符串。
示例代码如下:
```objective-c
NSString *str1 = @"abcd";
NSString *str = @"a";
if ([str1 rangeOfString:str].location != NSNotFound) {
NSLog(@"这个字符串中有a");
}
```
要截取一个字符串到指定字符,可以使用`substringToIndex:`方法。需要先找到指定字符的位置,然后使用该位置作为参数调用`substringToIndex:`方法。
示例代码如下:
```objective-c
NSString *string = @"abcdefghijklmn";
NSRange range = [string rangeOfString:@"h"];
string = [string substringToIndex:range.location];
NSLog(@"string:%@", string);
```