まゆたまガジェット開発逆引き辞典

電子工作やプログラミングのHowtoを逆引き形式で掲載しています。作りたいモノを決めて学んでいくスタイル。プログラマではないので、コードの汚さはお許しを。参照していないものに関しては、コピペ改変まったく問いません

文字列を複数の条件で検索し、置き換える

正規表現を使えばいいと気づいたのは後になってからでした。
「あなた、愛しているんだ」の文字列で、愛しているんだorそうだっけ?のいずれかがあった場合、「愛しているんだ」もしくは「そうだっけ?」の部分を「恋している」に書き換えたい場合、ここが参考になりました。

  NSString *string = @"あなた、愛しているんだ";
    NSString *template =@"恋している";
    NSRegularExpression *regexp =
    [NSRegularExpression regularExpressionWithPattern:@"愛しているんだ|そうだっけ?"
                                              options:0
                                                error:nil];

/*
愛しているor愛しているっけ?を検索条件にする場合は
regularExpressionWithPattern:@"愛している(んだ|っけ?)"
にする
*/


    NSString *replaced =
    [regexp stringByReplacingMatchesInString:string
                                     options:0
                                       range:NSMakeRange(0,string.length)
                                withTemplate:template];
    NSLog(@"%@",replaced);