結合アクセントをNFCでまとめる
入力と設定
Cafe + U+0301(結合アクセント) 形式: NFC
期待する結果
Café コードポイント: 5 → 4 UTF-8: 6 → 5 バイト
文字列をNFC・NFD・NFKC・NFKDへ変換し、変換前後のコードポイントとUTF-8バイト数を確認します。
入力は保存・外部送信しません。最大100,000 UTF-16コード単位。
変換前
変換後
検索や照合が一致しない文字列を調べるときに使います。NFCでは、e(U+0065)と結合アクセント(U+0301)がé(U+00E9)になります。日本語のカと結合濁点もガへ合成できます。
NFKCの例:① A ㎏ → 1 A kg。丸数字・全角・単位記号の区別が失われるため、氏名・識別子・数式などへ一括適用する前に結果を確認してください。
ブラウザーのString.normalize()を使用します。Unicodeデータの版はブラウザーに依存します。結果は最大1,800,000 UTF-16コード単位です。不正なサロゲートは変換せずエラーにします。
見た目が似ている文字列の照合前に、結合文字をまとめるか、互換文字も変換するかを試します。
例を試すと入力と設定を置き換え、上のツールで処理します。「元の入力へ戻す」は直前の入力と設定を復元します。前回の処理結果は復元しないため、必要に応じて再実行してください。既存の保存ルールが適用されます。
複数の例を試した場合は、「元の入力へ戻す」を繰り返すと最初の入力へ戻れます。履歴はページ内だけで保持するため、閉じる前に必要な入力を復元してください。
Cafe + U+0301(結合アクセント) 形式: NFC
Café コードポイント: 5 → 4 UTF-8: 6 → 5 バイト
① A 形式: NFKC
1 A
NFCの例は見た目がほぼ同じでもコードポイント数とバイト数が減ります。NFKCの例では①の囲みとAの全角という区別が失われます。「変更なし」なら選んだ形式ではすでに正規化されています。
NFC/NFDは正準等価、NFKC/NFKDは互換等価も扱います。スペル修正、見た目の似た別文字の統一、不可視文字の一括除去ではありません。入力は100,000 UTF-16コード単位まで。不正サロゲートは拒否し、コードポイント表示は先頭64個までです。
検証根拠:既存normalize関数でNFCの合成・NFKCの互換変換・件数とUTF-8バイト数を確認し、ブラウザの出力と照合します。
NFCは結合可能な文字を合成し、NFDは分解します。NFKC・NFKDは丸数字や全角文字などの互換表記も変えます。利用先の仕様がある場合は、その形式に合わせてください。
互換正規化では①が1へ変わるなど、区別が失われます。変換後の文字列から元の表記は復元できません。元の文章は入力欄に残るため、必要なら別に保存してください。
いいえ。Shift_JISなどの文字コード変換、誤字修正、すべての見た目が似た文字の統一は行いません。コードポイント数は見た目の文字数とも異なります。
ツール名と公開URLだけを共有します。入力した内容や処理結果は含まれません。
残したい内容は、先に保管してください。このツールの入力内容・結果は自動保存されません。ページの更新・終了や、入力を消す操作・リセットで失われる場合があります。
お気に入り・表示言語は作業データとは別に保存され、サイトデータの削除で失われる場合があります。端末に保存済みのファイルは、ツールのリセットやサイトデータの削除では消えません。