はじめに モバイルアプリサービス部の中安です。 「文字列の長さ」とは、Swiftに限らず様々な言語で当たり前のように使いますが、 そのいずれも簡単なように見えてややこしく、容易そうに見えて困難です。 それは常に「Unicode」や「マルチバイト」、はたまた「書記素」などの問題が孕むからです。 Swiftもまたバージョンが変わるごとに文字列の扱いが変遷してきました。 その度に文字列がコレクションになったりならなかったりという迷いもこういった事情が絡んでるからなんだろうなと思います。 ただし、この記事ではそういう学術的な深い話はしません。 もちろんある一定の理解は必要かと思いますが、実際のアプリ開発でさっと手に入れたいのは「人が文字を見て数える文字数」かなと思います。 ですので、今記事は何個かの文字列長取得の方法と、その正確性と速さの検証を掲載し、実際にアプリに実装するならどのような方法がある