在Objective中創建字符串時,通常不使用c方法,因為C將字符串作為字符數組,所以在操作中存在許多不便,本篇文章是武林技術頻道小編介紹的總結Objective-C中字符串NSString的常用操作方法。
1.創建字符串
(1)常量字符串
?
NSString *string = @"i am an iOSDevTip!";
(2)常用創建方法
?
?
?
NSString *string = [[NSString alloc] init];
?
string = @"i am an iOSDevTip too!";
(3)用initWithString創建字符串
?
?
?
NSString *string = [[NSString alloc] initWithString:@"iOSDevTip is here!"];
?
2.格式化創建字符串
(1)int格式化字符串
?
int age = 20;
NSString *personAge = [NSString stringWithFormat:@"this person age is %d",age];
既然int格式化字符串,那么float、double等,也可以格式化字符串。
?
(2)NSString格式化字符串
?
NSString *name = @"iOSDevTip";
NSString *personName = [NSString stringWithFormat:@"this person name is %@",name];
?
3.字符串比較
(1)isEqualToString方法比較
?
NSString *stingOne = @"This is an iOSDevTip!";
NSString *stringTwo = @"This is an iOSDevTip!";
BOOL result = [stingOne isEqualToString:stringTwo];
(2)compare方法比較
?
?
?
BOOL result = [stingOne compare:stringTwo] == NSOrderedSame;
compare:方法返回值類型為NSComparisonResult。而NSComparisonResult有下面幾個枚舉值。
?
?
?
typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};
?
4.字符串大小寫轉換
(1)小寫轉大寫
?
?NSString *string = @"This is an iOSDevTip!";
[string lowercaseString];
(2)大寫轉小寫
?
?
?
NSString *string = @"This is an iOSDevTip!";
[string uppercaseString];
(3)首字母大寫
?
?
?
NSString *string = @"ligang";
NSLog(@"string: %@",[string capitalizedString]);
打印:
?
?
?
2015-07-16 23:06:11.652 iOSStrongDemo[10279:3062010] string: Ligang
5.截取字符串
(1)substringToIndex截取字符串
?
NSString *string = @"This is a operation string!";
NSString *subToString = [string substringToIndex:6];
(2)截取的subToString為This i
?
substringFromIndex截取字符串
?
NSString *subFromString = [string substringFromIndex:6];
(3)截取的subFromString為s a operation string!
?
substringWithRange截取字符串
?
NSString *rangeString = [string substringWithRange:NSMakeRange(6, 3)];
截取的rangeString為s a!
?
6.判斷字符串是否包含另一個字符串
(1)rangeOfString判斷
?
NSString *string1 = @"This is a iOSDevTip";
NSString *string2 = @"iOSDevTip";
NSRange range = [string1 rangeOfString:string2];
NSInteger location = range.location;
NSInteger leight = range.length;
NSString *logString = [[NSString alloc] initWithString:[NSString stringWithFormat:@"Location:%ld,Leight:%ld",location,leight]];
NSLog(@"logString:%@",logString);
打印出來:
?
?
?
iOSStrongDemo[8837:2221170] logString:Location:10,Leight:9
(2)判斷是否包含前后綴
?
NSString *string = @"I love China";
BOOL isHasI = [string hasPrefix:@"I"];
BOOL isHasChina = [string hasSuffix:@"China"];
?
7.分割字符串
?
NSString *string = @"This is a iOSDevTip";
NSArray *array = [string componentsSeparatedByString:@"a"];
NSString *string1 = [array objectAtIndex:0];
NSString *string2 = [array objectAtIndex:1];
NSLog(@"string1:%@? string2:%@",string1,string2);
打?。?/p>
?
?
?
2015-07-16 22:40:39.559 iOSStrongDemo[10165:3055448] string1:This is string2: iOSDevTip
8.插入字符串
?
NSMutableString *string = [[NSMutableString alloc] initWithString:@"I China"];
[string insertString:@"Love " atIndex:2];
NSLog(@"string: %@",string);
打?。?br>2015-07-16 22:44:10.706 iOSStrongDemo[10206:3057014] string: I Love China
(1)追加字符串
?
?
?
NSMutableString *string = [[NSMutableString alloc] initWithString:@"I Love "];
[string appendString:@"China"];
NSLog(@"string:%@",string);
打印:
?
?
?
2015-07-16 22:42:32.305 iOSStrongDemo[10189:3056410] string:I Love China
9.刪除字符串
?
NSMutableString *string = [[NSMutableString alloc] initWithString:@"I love China"];
[string deleteCharactersInRange:NSMakeRange(2, 4)];
NSLog(@"String1: %@",string);
打?。?/p>
?
?
?
2015-07-16 22:46:58.437 iOSStrongDemo[10219:3057749] String1: I China
10.替換字符串
?
NSString *string = @"I love China";
NSString *replaceString = [string stringByReplacingOccurrencesOfString:@"love" withString:@"like"];
NSLog(@"replaceString:? %@",replaceString);
打印:
?
?
?
2015-07-16 22:56:07.405 iOSStrongDemo[10236:3059503] replaceString: I like China
11.去除字符串首尾的空格和換行符
?
NSString *string = @" I love China ";
NSString *text = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSLog(@"text:%@",text);
打?。?/p>
?
?
?
2015-07-16 23:00:47.845 iOSStrongDemo[10265:3061013] text:I love China
總結Objective-C中字符串NSString的常用操作方法的內容如上文所述,當前還有很多不同的類型,由于篇幅的有限。我們就為大家介紹這部分了,希望大家找到合適的資料。