2011-09-14 5 views
0

동일한 NSString에 둘 이상의 NSCharacterSet 객체를 사용할 수 있습니까?

NSString *aString = @"\tThis is a sample string"; 
NSString *trimmedString = [aString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; 
NSLog(@"The trimmed string: %@",trimmedString); 
trimmedString = [aString stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"string"]]; 
NSLog(@"The trimmed string: %@",trimmedString); 
characterSetWithCharactersInString: 여기서 characterSetWithCharactersInString: 같은 NSString 개체에 trimmedString를 사용하면 이전 whitespace 트리밍 효과가 제거됩니다 ..

내 질문은

동일한 NSString에 하나 이상의 NSCharacterSet 객체 사용 ??? 또는 나에게 다른 방법을 제안 해주세요.하지만 NSString 개체는 동일해야합니다.

답변

1

문제 때문에 문자 집합이 아닌. 그 이유는 문자열을 두 번째로 자르는 동안 aString을 사용하기 때문입니다. 대신 trimmedString을 사용해야합니다. 말했다 당신과 같아야 코드,

trimmedString = [trimmedString stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"string"]]; 
+0

변종으로 =) – Nekto

+0

@EmptyStack : 네 맞아 .. 나는 두 번째 라인에서 'trimmedString'으로 'aString'을 대체했다. – ramgandhi

1

무엇을해야 :

NSString *aString = @"\tThis is a sample string"; 
NSMutableCharacterSet *customSet = [[NSMutableCharacterSet alloc] init]; 
[customSet formUnionWithCharacterSet:[NSCharacterSet whitespaceCharacterSet]]; 
[customSet addCharactersInString:@"string"]; 
NSString *trimmedString = [aString stringByTrimmingCharactersInSet:customSet]; 
[customSet release]; 
+0

니스 Nekto .. 그러나 와트 EmptyStack가 .. 난 단지 당신의 질문을 답 : – ramgandhi

+0

주셔서 감사합니다 더 간단하다'에 하나 개 이상의 NSCharacterSet 객체를 사용할 수있는 가능성이있다 같은 NSString ???'. 귀하의 코드에서 오류를 검색하지 않았습니다 =) – Nekto

+0

오류 !! 왜??? – ramgandhi

관련 문제