[基础]NSString与NSMutableString字符串操作:增、删、改字符串

来源:互联网 发布:网络主播灯光摆放图 编辑:程序博客网 时间:2024/06/05 10:17
  1. NSString是定义固定大小的字符串,NSMutableString可变,可对字符串做增、删、改、插入等操作。  
  2. 源代码strings.m  
  3. -----------------------------------  
  4. #import <Foundation/Foundation.h>  
  5. int main (int argc, const char * argv[]) {  
  6.     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];  
  7.     // insert code here...  
  8.     NSString *artist = @"Underworld";  
  9. NSLog(@"The \"%@\" length is %d",artist,[artist length]);  
  10.   
  11. NSString *substring = [artist substringFromIndex:5];  
  12.   
  13.     NSLog(@"From index 5 to end that substring is \"%@\"",substring);  
  14.   
  15. NSRange range = [artist rangeOfString:@"w"];  
  16. NSLog(@"range.location = %d,是字母\"w\"所在的索引位置",range.location);  
  17. NSLog(@"range.length = %d,是字母\"w\"的长度",range.length);  
  18.   
  19. NSLog(@"------------------------------");  
  20.   
  21. NSString *song = @"美丽新世界,伍佰";  
  22. NSRange range1 = [song rangeOfString:@","];  
  23. NSString *songName = [song substringToIndex:range1.location];  
  24. NSString *songAuthor = [song substringFromIndex:range1.location + range1.length]; //如果不加上range1.length,取词就包含逗号  
  25.   
  26. NSLog(@"歌曲:%@",song);  
  27. NSLog(@"\",\"号位置为 %d",range1.location);  
  28. NSLog(@"歌名:%@",songName);  
  29. //printf("歌名:%s \n",[songName UTF8String]);//正确  
  30. //NSLog(@"歌名:%@", [songName UTF8String]);//错误  
  31. NSLog(@"作者:%@",songAuthor);  
  32.   
  33. NSLog(@"---------------------------------");  
  34. NSLog(@"可变字符串类NSMultableString演示:");  
  35.   
  36. NSMutableString *movie = [[NSMutableString alloc] initWithString:@"变形金刚2"];  
  37.   
  38. NSLog(@"%@",movie);  
  39.   
  40. [movie appendString:@",派拉蒙影业"];  
  41. NSLog(@"%@.方法appendString",movie);  
  42.   
  43. NSRange range2 = [movie rangeOfString:@"派拉蒙影业"];  
  44. [movie replaceCharactersInRange:range2 withString:@"派拉蒙电影公司"]; //不是range2.location  
  45. NSLog(@"%@.方法replaceCharactersInRange",movie);  
  46.   
  47. [movie deleteCharactersInRange:[movie rangeOfString:@"公司"]];  
  48. NSLog(@"%@.方法deleteCharactersInRange",movie);  
  49.   
  50.     range2 = [movie rangeOfString:@"变形金刚"];  
  51. [movie insertString:@"科幻电影:" atIndex:range2.location];  
  52. NSLog(@"%@.方法insertString",movie);  
  53.   
  54. [movie release]; //采用alloc的对象都不要忘记release  
  55. [pool drain];  
  56.     return 0;  
  57. }  
0 0
原创粉丝点击