見た目が同じでも中身が違う
「が」は、1つのコードポイントとして表す方法と、「か」に結合用の濁点を組み合わせる方法があります。画面では同じに見えても、単純な文字列比較では一致しないことがあります。
合成済み
が → U+304C分解形
か + ◌゙NFCとNFD
NFCは可能な範囲で文字を合成し、NFDは基本文字と結合文字へ分解します。検索、会員IDの照合、ファイル名比較などでは、比較前に同じ正規化形式へそろえると不一致を減らせます。
互換正規化
NFKC・NFKDは、全角英数字や互換文字なども変換します。便利な一方で、原文の表記が変わるため、表示用の文章を無条件に変換するのではなく用途を決めて使います。