2011-07-12 6 views
13

文字列の一部を置換するために次のコードを使用しています。これは通常の文字(アルファベット文字)でも有効ですが、 "•"のようなシンボルの場合は文字を置き換えることはできません。目的C - NSStringの文字列の一部を置き換えますか?

[myString stringByReplacingOccurrencesOfString:@"•" withString:@"<BULLET_POINT>"]; 

答えて

25

ソースファイルに「•」などの非ASCII文字を文字通り挿入することはできません。代わりにエスケープ\u2022を使用してみてください。

myString = [myString stringByReplacingOccurrencesOfString:@"\u2022" withString:@"<BULLET_POINT>"]; 
+0

それは交換して新しい文字列を返し、それが実際に現在の文字列 – aryaxt

+2

@aryaxtを変更しない「stringByReplacingOccurrencesOfString」方法のように思える:その通りだし、NSStringのは不変オブジェクトであるからです。あなたがNSMutableStringを持っているなら、 'stringByReplacingOccurrencesOfString ...'の代わりに 'replaceOccurrencesOfString:withString:options:range:'を使うことができます。 – Tommy

関連する問題