2011-10-29 2 views
-8
NSMutableString *str = [[NSMutableString alloc] init]; 
[str appendString: @"ab cd efghil mnopq rstuvz"]; 
//my test 
[str deleteCharactersInRange:NSMakeRange(2, [str length] -1)]; 

나는 첫 번째 3자를 추출합니다. 귀하의 질문은 당신이 당신의 가변 문자열 그냥 처음 세 문자가 될하려는 경우첫 번째 3자를 가변 문자열로 추출하십시오.

+0

답변에 만족하지 않아서 무엇을 묻고 있는지 명확하지 않습니다. – Benjie

답변

3

,이 작동합니다 (모자 팁 @EmptyStack) : 또는

NSMutableString *str = [[NSMutableString alloc] init]; 
[str appendString: @"ab cd efghil mnopq rstuvz"]; 
[str setString:[str substringToIndex:2]]; 

, 귀하가 제안하는 해결책은 멀리하지 않습니다 :이 질문은 당신이 하나의 문자열의 처음 3 개 문자가 원하고, 나머지는 변경 가능한 문자열에 남아 있다는 것입니다 경우

NSMutableString *str = [[NSMutableString alloc] init]; 
[str appendString: @"ab cd efghil mnopq rstuvz"]; 
[str deleteCharactersInRange:NSMakeRange(3, [str length] -3)]; 

는 다음이 당신이 원하는 :

NSMutableString *str = [[NSMutableString alloc] init]; 
[str appendString: @"ab cd efghil mnopq rstuvz"]; 
NSMutableString *first3Chars = [[[str substringToIndex:3] mutableCopy] autorelease]; 
[str deleteCharactersInRange:NSMakeRange(0, 3)]; 
+0

네, 맞아요! 너. – Mario

+0

답변을 수락하고 어떤 것을 선택했는지 알려주는 마음입니까? – Benjie

관련 문제