digtools
⚙️
unicode-normalizer,

Macの濁点分離を修正
(Unicode正規化)

Mac特有のファイル名の濁点分離(か゛き゛)をブラウザで即座に修復します。

⚡️
貼り付けるだけで即修復
ワンクリックで濁点分離を解消
✨️
Mac濁点問題に完全対応
NFD→NFC自動変換
🛡️
外部ライブラリ不要
ブラウザ標準機能のみで動作
文字数: 0 | NFD検出: 0箇所
about,

概要

Unicodeテキストの正規化(NFC/NFD/NFKC/NFKD)をリアルタイムで実行するオンラインツールです。文字コードの統一や比較に必要な正規化処理を簡単に行えます。

全角・半角の統一、濁点の結合/分解、互換文字の正規化など、テキスト処理で頻出する正規化パターンに対応。文字のコードポイント表示やバイト列表示も可能です。

すべての処理はブラウザ内で完結し、データがサーバーに送信されることはありません。

how to use,

使い方

STEP 1

テキストを入力する

正規化したいテキストを入力欄に入力またはペーストします。

STEP 2

形式を選択する

NFC、NFD、NFKC、NFKDのいずれかの正規化形式を選択します。

STEP 3

結果を確認・コピー

正規化後のテキストとコードポイントの変化を確認し、コピーします。

glossary,

用語集

Unicode(ユニコード)
世界中の文字を一つの体系で扱うために作られた世界標準の文字コード規格。絵文字や歴史的な特殊文字などもすべてこの基準で管理されています。
正規化 (Normalization)
見た目は全く同じでも、裏側のデータ構造(バイトの並び)が違う文字同士を、あらかじめ決められた「正しい(統一された)形」に揃える変換処理のこと。
サロゲートペア
従来の2バイト(16ビット)では表現しきれなくなった絵文字などの特殊な文字を、2つの文字コード(4バイト)を組み合わせて表現する仕組みです。
結合文字・濁点分離
「が」を1文字とするのではなく、「か」と「゛(濁点)」の2つの文字を組み合わせて視覚的に「が」と見せる仕組み。WindowsとMac間でデータをやりとりする際に文字化けの原因になりやすい要素です。
NFD (Normalization Form Canonical Decomposition)
すべての文字を「バラバラの部品に分解」する形式。たとえば「が」は強制的に「か」+「゛」に解体されます。Macのファイルシステム(HFS+ / APFS)などで使われます。
NFC (Normalization Form Canonical Composition)
分解されている文字を「一つに結合結合」する形式。「か」+「゛」などの不自然なデータを、標準的な単一文字である「が」に美しくまとめ直します。WebやWindows環境で推奨される圧倒的標準です。
NFKC (Normalization Form Compatibility Composition)
NFCの結合に加え、「㈱」を「(株)」に、「①」を「1」にするなど、形が違う文字でも意味が同じであれば標準的な文字に無理やり書き換える(互換分解+結合)強力過ぎる形式です。
technology,

技術解説

String.prototype.normalize() API

ブラウザ固有のネイティブ関数のみを用いているため、膨大な文字列データであっても数ミリ秒で即座に正規化が完了します。

use cases,

活用シーン

🗄️

データベース統一

ユーザー入力の正規化でデータの統一性を確保。

🔍

文字列比較

正規化後の文字列で正確な比較・検索を実現。

📊

テキスト前処理

自然言語処理やデータ分析の前処理として正規化を適用。

🔧

文字コード調査

文字のコードポイントを確認。エンコーディング問題の調査に。

faq,

FAQ

Q.なぜ文字の正規化が必要なのですか?
見た目が同じでもデータが違う「が」が混在していると、データベースの検索システムで「が」と検索してもヒットしない(すり抜ける)などの重大なシステムエラーが起こるため、登録前に文字コード体系を統一する必要があるからです。
Q.NFC, NFD, NFKC, NFKD のどれを選べばいいか分かりません。
特別な理由がない限り、常に「NFC」を選択してください。Webの世界(HTML・データベース等)ではNFCが最も安全な事実上のグローバルスタンダード(W3C推奨)です。
Q.Macで作った濁点ファイル名のデータがおかしいです。
Macの仕様による原因です。これはMacが「NFD(分離型)」を採用しているため起こります。本ツールにペーストして「NFC」で変換すれば、Windowsでも文字数がおかしくならない正しい文字に修復できます。
Q.「㈱」や丸数字「①」を普通の文字に崩したいです。
その場合は「NFKC(互換等価)」による変換を選択してください。「㈱」は「(株)」に、全角の「A」は半角の「A」に強制的に均等化され、プレーンなシステムで扱いやすいデータになります。
Q.送信した文字列はどこかのサーバーのデータベースに残りますか?
一切残りません。ブラウザに標準搭載されている「String.prototype.normalize()」という内部機能のみを呼び出して瞬時に処理しているため、ネットワーク通信は発生しません。
Q.処理できる文字数や容量に上限はありますか?
アルゴリズムは非常に軽量なため、テキストファイル丸ごと(数万〜数十万文字)貼り付けてもほぼ一瞬で完了します。上限はパソコンのブラウザメモリの許容量に比例します。
Q.「正規化された文字数」が元の文字数と変わる事があるのはなぜですか?
「か」+「゛」(2文字)が結合し「が」(1文字)になるため文字数が減ったり、逆に「㈱」(1文字)が「(株)」(3文字)に分解されて文字数が増えたりするからです。