ICU (International Components for Unicode)
Unicode の国際化ライブラリ。文字列の照合・変換・書式設定など多言語処理の基盤を提供する。
ICU (International Components for Unicode) は、Unicode コンソーシアムが開発する国際化 (i18n) ライブラリです。C/C++ 版 (ICU4C) と Java 版 (ICU4J) が提供され、多くのプラットフォームやアプリケーションの多言語処理基盤として使われています。
ICU は文字列の照合 (ロケール対応のソート)、日付・数値・通貨の書式設定、テキスト境界検出 (単語・文・行の区切り)、文字変換 (ひらがな↔カタカナ) など幅広い機能を提供します。Unicode 国際化ライブラリの書籍で ICU の全体像を学べます。
Node.js は v13 以降、ICU のフルデータセットをデフォルトで同梱しており、Intl API の内部実装に ICU が使われています。
ICU の照合アルゴリズム (UCA: Unicode Collation Algorithm) は、ロケールごとに異なるソート順序を正確に処理します。ソフトウェア国際化の書籍で照合アルゴリズムの詳細を習得できます。