【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にしてください。