プログラミング言語でのUnicode正規化
JavaScript、Python、Java、Go、Rust、SwiftでUnicodeを正規化する方法。各言語の正規化APIのコード例を含みます。
Programming
詳細な説明
プログラミング言語間の正規化
すべての主要プログラミング言語がUnicode正規化を提供していますが、APIは大きく異なります。
JavaScript
const text = "café";
text.normalize("NFC"); // NFC(デフォルト)
text.normalize("NFD"); // NFD
text.normalize("NFKC"); // NFKC
text.normalize("NFKD"); // NFKD
Python
import unicodedata
text = "café"
unicodedata.normalize("NFC", text)
# Python識別子はNFKC正規化される
Java
import java.text.Normalizer;
Normalizer.normalize(text, Normalizer.Form.NFC);
Go、Rust、Swift
それぞれ固有のAPIとライブラリが用意されています。Swiftの文字列はデフォルトで書記素ベースの比較を使用するため、正規化の違いが==に影響しません。
ユースケース
アプリケーションにUnicode正規化を実装する開発者のためのリファレンスです。言語間のコード移植、コードの正規化の正確性のレビュー、新しいプロジェクトに適した正規化APIの選択に役立ちます。