【Objective-C】NSStirngの「かんじ」を「カンジ」みたいに変換する方法(ひらがな→カタカナ変換)【Xcode10.2対応】

こういう人向けに発信しています。
・ひらがなをカタカナに変換したい人
・逆にカタカナをひらがなに変換したい人
・Objective-C中級者

コード(Objective-C)

-(void)transformString{
   NSString *hiraganaString = @"アオモリ";
   hiraganaString = [hiraganaString stringByApplyingTransform:NSStringTransformHiraganaToKatakana
                                                      reverse:YES];
   NSLog(@"%@",hiraganaString); //結果:あおもり
   

   NSString *ibarakiString = @"いばらき";
   ibarakiString = [ibarakiString stringByApplyingTransform:NSStringTransformHiraganaToKatakana
                                                      reverse:NO];
   NSLog(@"%@",ibarakiString); //結果:イバラキ
   
}

解説1

下記のように「元言語」→「変換先」を探して引数に渡してあげます。

例:ひらがな→カタカナ = NSStringTransformHiraganaToKatakana

補足:カタカナ→ひらがなの場合も上記でOKです。

FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToKatakana         API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHiragana         API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHangul           API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToArabic           API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToHebrew           API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToThai             API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToCyrillic         API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformLatinToGreek            API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToLatin                 API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformMandarinToLatin         API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformHiraganaToKatakana      API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformFullwidthToHalfwidth    API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToXMLHex                API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformToUnicodeName           API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformStripCombiningMarks     API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));
FOUNDATION_EXPORT NSStringTransform const NSStringTransformStripDiacritics         API_AVAILABLE(macos(10.11), ios(9.0), watchos(2.0), tvos(9.0));

解説2:Reverseとは

NSStringTransformHiraganaToKatakana、
つまりひらがな→カタカナで良い場合は「reverse:NO」です。

逆にカタカナ→ひらがなと逆の処理を行いたい場合は、
YESにしてください。

この記事が気に入ったらサポートをしてみませんか?