半角カナを全角カナに変換する。
かんばんわ。
NSMutableStringとCFMutableStringRefは相互に型変換できるので、CFStringTransformを使えば半角カタカナを全角カタカナに変換できます。
// 半角カナを全角カナに変換 NSMutableString* string =[[NSMutableString alloc] initWithFormat:@"ヴァーパピガギグ"]; CFStringTransform((CFMutableStringRef)string, NULL, kCFStringTransformFullwidthHalfwidth, true); [string release];
transformパラメータを変更することで様々な変換も可能です。カタカナをひらがなにすることも可能。すごいすごい。
上のコードではreverseパラメータをtrueにして逆変換していますが、falseにすると全角カナが半角カナになります。
また、 kCFStringTransformFullwidthHalfwidth はカタカナに限らず英字記号にも対応しています。
// 全角記号を半角記号に変換 NSMutableString* string = [[NSMutableString alloc] initWithFormat:@"!”#$%&’()"]; CFStringTransform((CFMutableStringRef)string, NULL, kCFStringTransformFullwidthHalfwidth, false); [string release];