转载自:http://my.oschina.net/outatu/blog/124967
4.字符串分割与拼接
01 | //@"" 空的字符串对象 |
02 | -------分割 |
03 | NSString * ptr = @ "I am a man" ; |
04 | NSArray * array = [ptr componentsSeparatedByString:@ " " ]; //将字符串整体作为分割条件 返回值为NSArray不可变数组 |
05 | NSMutableArray * array1 = [NSMutableArray arrayWithArray:array]; //若修改,则将NSArray转化为NSMutableArray |
06 | NSArray * array2 = [ptr componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@ ", " ]]; //以字符串中的字符作为分割条件进行分割 |
07 | 《字符集合》 |
08 | NSCharacterSet 这是个字符集合类 |
09 | [NSCharacterSet characterSetWithCharactersInString:@ ", " ] //把字符串转化为字符集合 |
10 | -------拼接 |
11 | NSString * str = [array componentsJoinedByString:@ " " ]; |
12 |
13 | 若分割条件出现在开头或者结尾,则会出现空串@ "" ,如果不需要,则需要转化成NSMutableString对空串进行处理 |
14 | func1: [array1 removeObject:@ "" ]; //找到空串直接删除 |
15 | func2: for (id obj in array1){ |
16 | if ([obj length] == 0) //空串的长度为0 |
17 | if ([obj isEqualToString:@ "" ]) //与空串进行比较(字符串是不能进行==比较的,要使用函数) |
18 | } |
字符串处理 转载自:http://blog.csdn.net/scy411082514/article/details/7708106点击打开链接
/--------操作字符串--NSString(静态字符串)---------------------
//字符串转数组
//
//数组转字符串
//-substringToIndex: 从字符串的开头一直截取到指定的位置,但不包括该位置的字符
NSString *string1 = @"This is a string";
NSString *string2 = [string1 substringToIndex:3];
NSLog(@"string2:%@",string2);
//-substringFromIndex: 以指定位置开始(包括指定位置的字符),并包括之后的全部字符
NSString *string1 = @"This is a string";
NSString *string2 = [string1 substringFromIndex:3];
NSLog(@"string2:%@",string2);
//-substringWithRange: //按照所给出的位置,长度,任意地从字符串中截取子串
NSString *string1 = @"This is a string";
NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];
NSLog(@"string2:%@",string2);
//--------操作动态字符串--NSMutableString----------------------------------------------------
常见的NSString方法
+(id)stringWithContentsOfFile:path encoding:enc error:err
创建一个新字符串并将其设置为path指定的文件的内容,使用字符编码enc,如果非零,则返回err中的错误。
+(id)stringWithContentsOfURL:url encoding:enc error:err
床架一个新字符串,并将其设置为url的内容,使用字符编码enc,如果非零,则返回err中的错误。
+(id)string 创建一个新的空字符串。
+(id)stringWithString:nsstring 创建一个新字符串,并将其设置为nsstring
-(id)initWithString:nsstring 将新分配的字符串设置为nsstring
-(id)initWithContentsOfFile:path encoding:enc error:err
将字符串设置为path指定的文件的内容
-(id) initWithContentsOfURL:url encoding;enc error:err
将字符串设置为url(NSURL*)url的内容,使用字符编码enc,如果非零,则返回err中的错误。
-(UNSIgned int)lengtn 返回字符串中字符数目
-(unichar) characterAtIndex:i 返回索引i的Unicode字符
-(NSString*)substringFromIndex:i 返回从i开始直到结尾的字符串
-(NSString*)substringToIndex:i 返回从该字符串开始位置到索引i的子字符串
-(NSComparator *)caseInsensitiveCompare:nsstring 比较两个字符串,忽略大小写
-(NSComparator *)compare:nsstring 比较两个字符串
-(BOOL)hasPrefix:nsstring 测试字符串是否以nsstring开始
-(BOOL)isEqualToString:nsstring 测试两个字符串是否相等。
-(NSString*)capitalizedString 返回每个单词首字母大写的字符串(每个单词的其余字母转换为小写)
-(NSString *)lowercaseString 返回转换为小写的字符串
-(NSString *)uppercaseString 返回抓换为大写的字符串
-(const char *)UTF8String 返回转换为UTF8字符串的字符串
-(double) doubleValue 返回转换为NSInteger整数的字符串
-(int)intValue 返回转换为整数的字符串
NSMutableString字符方法
+(id)stringWithCapacity:size 创建一个字符串,初始包含size的字符
-(id)initWithCapacity:size 使用初始容量为size的字符来初始化字符串
-(void)setString :nsstring 将字符串设置为nsstring
-(void) appendString:nsstring 在接受者的末尾附加nsstring
-(void)deleteCharactersInrange:range 删除指定range中的字符
-(void)insertString:nsstring atIndex:i以索引i为起始位置插入nsstring
-(void) replaceCharactersInrange: range withString:nsstring 使用nsstring替换range指定的字符
-(void)replaceOccurrencesOf String:nsstring withString:nsstring2 options:opts range:range
根据选项opts,使用指定range中的nsstring2替换所有的nsstring。选项可以包括NSBackwardsSearch(从范围的结尾开始搜索),NSAn冲热点Search(nsstring必须匹配范围的开始),NSLiteralSearch