iPhoneアプリ開発の虎の巻
HOME > NSMutableString

NSMutableString

NSMutableStringクラスは、文字列を可変文字列としたい場合に使用します。
NSMutableStringはNSStringを継承しているので、NSStringのメソッドはそのまま使用できます。

NSMutableStringのクラス階層

NSObjectNSString ↑ NSMutableString

生成

// 空のNSMutableStringを生成
NSMutableString *mstr = [NSMutableString string];

// 文字列を指定した生成
NSMutableString *mstr = [NSMutableString stringWithString:@"ほげ"];

NSMutableStringのメソッド

【NSMutableStringの主要メソッド】
メソッド 説明
-(void)appendString:
(NSString*)aString
文字列を結合する
(例)mstrに"hoge"を結合する
 [mstr appendString:@"hoge"];
-(void)setString:(NSString*)aString 文字列を置き換える
(例)mstrの値を"ほげ"に置き換える
 [mstr setString:@"ほげ"];
-(void)insertString:(NSString*)aString
atIndex:(NSUInteger)anIndex
指定した位置に文字列を挿入する
(例)mstr("ABCDEFG")に以下のメソッドを実行
 [mstr insertString:@"X" atIndex:3];
 →"ABCXDEFG"
-(void)deleteCharactersInRange:
(NSRange)aRange
指定した位置の文字を削除する
(例)mstr("ABCDEFG")に以下のメソッドを実行
 [mstr deleteCharactersInRange:NSMakeRange(2,3)];
 →"ABFG"
-(void)replaceCharactersInRange:
(NSRange)aRange
withString:(NSString*)aString
指定した位置の文字列を置換する
(例)mstr("ABCDEFG")に以下のメソッドを実行
 [mstr replaceCharactersInRange:NSMakeRange(2,3) withString:@"X"];
 →"ABXFG"

主要なメソッドのみ掲載しています。
 上記「NSMutableStringのクラス階層」にあるクラスのメソッドも使用できます。

NSMutableString例文

// リストを作成する
NSMutableString *ms = [NSMutableString string];
[ms appendString:@"あ"];
[ms appendString:@"い"];
[ms appendString:@"う"];
[ms appendString:@"え"];
[ms appendString:@"お"];

※以下、上記 ms を元とした例文です。

// 「い」の次に「★」を挿入する
[ms insertString:@"★" atIndex:2];
  →あい★うえお
// 「え」を「ゑ」に変更する
[ms replaceCharactersInRange:NSMakeRange(3, 1) withString:@"ゑ"];
  →あいうゑお
// 「う」を削除する
[ms deleteCharactersInRange:NSMakeRange(2, 1)];
  →あいえお
totop