swiftで濁点のついた文字列の扱いについて(NFD, NFC)

Swift(3.1基準)で特殊文字の入った文字列を扱う場合、濁点や半濁点が他の文字と合体(?)して非常に分かりづらい状況になる事がある。

☆.・。+:゚*。・
上の文字列の中で赤い部分の様に"半濁点"が左の文字と合体(NFC状態)してしまって一つの文字として扱われてしまい、replacingOccurrences見たいな普通の文字検索や置換では扱えない場合がある。

こういった場合は文字列を"Unicode Scalar"単位で割って扱う必要がある。
詳細は下を参考しよう。



References
- http://gootara.org/library/2016/10/sssjf.html
- https://ko.wikipedia.org/wiki/유니코드_정규화
- https://another.rocomotion.jp/14368685864590.html

댓글

이 블로그의 인기 게시물

Unity에서 모델의 폴리곤의 반대편이 랜더링 되지 않는 문제 해결 방법

Docker 컨테이너 네트워크 설정시 ifconfig로 docker0를 찾을 수 없는 문제에 대해

Use FFMPEG in XCode(for MacOS)