NSString基礎的 api
NSString *str1 = @"BeiJing"; NSString *str2 = @"beijing"; //所有轉爲大寫 NSLog(@"%@",[str1 uppercaseString]); //所有轉爲小寫 NSLog(@"%@",[str1 lowercaseString]); //首字母大寫 NSLog(@"%@",[str1 capitalizedString]); //比較兩個字符串內容是否相同 BOOL b =[str1 isEqualToString:str2]; //兩個字符串內容比較 //NSOrderedAscending 右邊 > 左邊 //NSOrderedSame 內容相同 //NSOrderedDescending 左邊 > 右邊 NSComparisonResult result = [str1 compare:str2]; if (result == NSOrderedAscending) { NSLog(@"右邊 > 左邊"); }else if(result == NSOrderedSame){ NSLog(@"內容相同"); }else if (result == NSOrderedDescending){ NSLog(@"左邊 > 右邊"); } //忽略大小寫進行比較,返回值與compare同樣 result = [str1 caseInsensitiveCompare:str2]; if (result == NSOrderedAscending) { NSLog(@"右邊 > 左邊"); }else if(result == NSOrderedSame){ NSLog(@"內容相同"); }else if (result == NSOrderedDescending){ NSLog(@"左邊 > 右邊"); } //判斷字符串是否以指定字符串開頭 [str1 hasPrefix:@"aaa"]; //判斷字符串是否以指定字符串結尾 [str1 hasSuffix:@"aaa"]; //判斷字符串是否包含指定字符串,返回位置和長度 NSRange range = [@"123456" rangeOfString:@"456"]; NSLog(@"%@", NSStringFromRange(range)); //反向搜索 range = [@"123456456qweasasd456" rangeOfString:@"456" options:NSBackwardsSearch]; NSLog(@"%@",NSStringFromRange(range)); //指定範圍進行搜索 range = NSMakeRange(0, 9); range = [@"123456456qweasasd456" rangeOfString:@"456" options:NSBackwardsSearch range:range]; NSLog(@"%@",NSStringFromRange(range));
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);
三。NSString的path拼接與刪除 數組
1.將數組中的字符串組合成一個文件路徑 spa
NSMutableArray *components = [NSMutableArray array]; [components addObject:@"Users"]; [components addObject:@"CentralPerk"]; [components addObject:@"Desktop"]; NSString *path = [NSString pathWithComponents:components]; NSLog(@"path = %@",path); //path = Users/CentralPerk/Desktop
NSArray *array1 = [path pathComponents]; NSLog(@"路徑拼接成的array1 = %@",array1); /* 路徑拼接成的array1 = ( Users, CentralPerk, Desktop ) */
path = @"/Users/CentralPerk/Desktop"; NSString *path1 = @"Users/CentralPerk/Desktop"; NSLog(@"判斷"@"/Users/CentralPerk/Desktop""否是絕對路徑%i",[path isAbsolutePath]); NSLog(@"判斷"@"Users/CentralPerk/Desktop""否是絕對路徑%i",[path1 isAbsolutePath]); // 判斷/Users/CentralPerk/Desktop否是絕對路徑1 // 判斷Users/CentralPerk/Desktop否是絕對路徑0
4.獲取最後一個目錄: code
NSLog(@"獲取"@"/Users/CentralPerk/Desktop""最後一個目錄:%@",[path lastPathComponent]); // 獲取/Users/CentralPerk/Desktop最後一個目錄:Desktop
NSLog(@"刪除"@"/Users/CentralPerk/Desktop""最後一個目錄%@",[path stringByDeletingLastPathComponent]); // 刪除/Users/CentralPerk/Desktop最後一個目錄/Users/CentralPerk
NSLog(@"拼接"@"/Users/CentralPerk/Desktop""最後一個目錄%@",[path stringByAppendingPathComponent:@"aaa"]); // 拼接/Users/CentralPerk/Desktop最後一個目錄/Users/CentralPerk/Desktop/aaa NSLog(@"%@",[path stringByAppendingString:@"aaa"]); //字符串拼接以後獲得的:/Users/CentralPerk/Desktopaaa NSLog(@"%@",[path stringByAppendingFormat:@"%@%@",@"b",@"c"]); //字符串拼接以後獲得的:/Users/CentralPerk/Desktopbc
獲取擴展名,不帶點,添加擴展名,不帶點,刪除擴展名,會連同點一塊兒刪除。 component
//獲取拓展名,不帶. NSString *str2 = @"Users/CentralPerk/Desktop/test.txt"; NSLog(@" 獲取%@的擴展名%@",str2, [str2 pathExtension]); //添加拓展名,不須要帶. NSLog(@"給%@添加擴展名後獲得的:%@",str2, [str2 stringByAppendingPathExtension:@"mp3"]); //刪除拓展名,帶.一塊刪除 NSLog(@"將%@的擴展名刪除後獲得的是:%@",str2,[str2 stringByDeletingPathExtension]);
給Users/CentralPerk/Desktop/test.txt添加擴展名後獲得的:Users/CentralPerk/Desktop/test.txt.mp3 orm
將 Users/CentralPerk/Desktop/test.txt 的擴展名刪除後獲得的是: Users/CentralPerk/Desktop/test五。字符串轉化問題 字符串
1.字符串轉爲 int double float string
NSString *str3 = @"123"; NSLog(@"%i",[str3 intValue]); NSLog(@"%zi",[str3 length]);
unichar c = [str3 characterAtIndex:2]; NSLog(@"%c",c);
const char *s = [str3 UTF8String]; NSLog(@"%s",s);