café を cafe にする方法:アクセント記号の除去と例外
同じ名前でも、José と Jose が別の人物として扱われることがあります。アクセント記号を外せば一致しますが、元の綴りの情報は失われるため、どの文字が変わってどれが変わらないかを先に知っておくと安全です。
アクセントを外したい場面
古いシステムへ取り込むとき、項目の長さ制限や文字コードの制限、単純な入力チェックによって café が caf? になったり、そのまま拒否されたりします。基本のラテン文字に戻すのが、最も簡単な回避策になることが多いです。
氏名の照合もよくあります。一方の表には José、別の表には Jose と書かれ、Excel やデータベースの照合で一致しません。検索キーワード、URL のスラッグ、ユーザー名、メールの前置きの正規化も同じ種類の作業です。
- アクセント文字を受け付けない古いシステムへの取り込み
- 同じ氏名の異なる綴りを照合する
- URL のスラッグ、ユーザー名、メールの前置きを作る
- 検索キーワードの表記を揃える
仕組み:文字を分解し、記号を削除する
アクセント付きの文字には、合成済みの 1 文字として表す方法と、基本文字と結合記号の組み合わせで表す方法があります。ツールはまずテキストを分解し、U+0300 から U+036F の範囲の結合記号を削除します。é は e、ñ は n、ü は u、ç は c、Ā は A になります。
変化しない文字もあります。ドイツ語の ß、デンマーク語の ø、ポーランド語の ł、ベトナム語の đ、合字の æ と œ は「基本文字 + 記号」ではないため、そのまま残ります。漢字や仮名などの非ラテン文字も対象外で、処理後も読めます。
- é、ñ、ü、ç、Ā は基本文字に戻る
- ß、ø、ł、đ、æ、œ は変化しない
- 漢字や仮名は影響を受けない
- 対象は U+0300〜U+036F の結合記号のみ
元に戻せず、音訳でもない
記号を削除した時点でアクセントの情報は失われ、cafe から café、cafè、cafê のどれだったかを復元できません。処理前に原文を残し、結果は別名で保存して、元のファイルを上書きしないでください。
音訳のツールでもありません。ドイツ語の ü は正式な転写で ue と書くことが多く、デンマーク語の ø は oe と書く場合がありますが、ここでは u になるか ø のままです。各国の転写規約に合わせるには専用の対応表や国際化ライブラリが必要です。
- 結果は元に戻せないため原文を残す
- ü を ue にする音訳は行わない
- キリル文字やギリシャ文字は対象外
- 大文字小文字はそのまま保たれる
よくある質問
アクセントを元に戻せますか?
自動では戻せません。記号を削除すると é、è、ê はすべて e になり、どれだったかを判断できません。元のファイルを残し、検索や取り込みの用途なら別名で保存してください。
ø が o にならないのはなぜですか?
ø は Unicode で「基本文字 + 結合記号」ではなく 1 つの独立した文字で、分解できる記号がないためです。ß、ł、đ、æ、œ も同様で、ss、l、d、ae、oe には自動ではなりません。
中国語や日本語は影響を受けますか?
受けません。対象はラテン文字の結合記号だけで、漢字や仮名などは読める形のまま残り、空白や疑問符に置き換わることはありません。混在した文章もそのまま処理できますが、処理後に綴りを確認してください。
関連ツール:アクセント記号の除去