はじめに Objective-Cでは文字列はNSStringを利用し、その長さを取得するにはlengthメソッドを使うのが一般的です。 ですが、これだと昨今頻繁に使われている絵文字などが混在した場合に"見た目通りの"長さが取得できません。 NSString *text = @"あ🌟い🐶う🐱え✪お☆"; NSLog(@"length: %@", @(text.length)); //=> length: 13 絵文字入りの場合はenumerateSubstringsInRangeを使う 絵文字が混在している場合はenumerateSubstringsInRangeをNSStringEnumerationByComposedCharacterSequencesオプションで利用することで"見た目通りの"長さが取得できます。 NSStringのカテゴリとしてメソッドとプロパティを定義してあげ