2011-12-08 7 views
0

私は動的で常に変化するNSStringを持っています。私はNSStringのを取り、「@でそれのすべての文字の出現を交換する必要がある」という文字列を除い@「\ n」はNSStringから1つを除くすべての文字のインスタンスを削除します。

だから私は@ですべてを置き換えることでは\ n以外のすべてを削除もしそうなら、私は NSString *string = @"This is my string at 10:00PM\n I hate this string\n"; を持っている場合""と\ nオカレンスを1に置き換えると、2つのオカレンスがあるので、最後の新しい文字列は11になります。文字列には存在する文字も含まれる可能性があるので、\ nを除くすべての文字を削除する必要があります。

どうすればいいですか?

+0

あなたは、iOSやOSXでいますか? http://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html :) – Powertieke

答えて

1

ような何かをする方が簡単だと思う:

NSUInteger numNewlines = [[string componentsSeparatedByString:@"\n"] count] - 1; 
NSMutableString *ones = [[NSMutableString alloc] initWithCapacity:numNewlines]; 
for (int i = 0; i < numNewLines; i++) { 
    [ones appendString:@"1"]; 
} 
0

私はそれはあなたがより便利にしたい場合は、わずかに多くのメモリ集約型のソリューションとはいえ、

NSString *newString = @""; 
for(int i=0;i<[string length]; i++) 
    if([string characterAtIndex:i]=='\n') 
     newString = [newString stringByAppendingString:@"1"]; 

string = newString; 
関連する問題