← Blog

空白がコピペできない?原因は3つだけ

✓ この記事の技術情報は、サイトの公開のたびにUnicodeのデータベースと照合しています。

あるサイトでコピーした空白は消えたのに、別のサイトの「同じ」空白は ちゃんと使えた — 運の問題ではありません。見えない文字の運命を決める 仕組みは3つだけ。どれに当たったかが分かれば、対処は数十秒で済みます。

仕組み1:フォームの自動整形

ほとんどのアプリは、送信されるテキストを自動で「掃除」します。前後の 空白を削り、連続するスペースを詰める処理です。この掃除はUnicodeの 公式の空白リストに基づいて行われます — 画面上で空っぽに 見えるかどうかは関係ありません。半角スペースも全角スペースも細いスペースも、 全部このリストに載っているので、全部消されます。

生き残るのは、リストに載っていないのに空白に見える文字 です。ハングル埋め文字(Unicode上は文字)や点字の空白パターン(記号)が その代表。掃除する側から見れば、これらは正当な本文です。

仕組み2:文字の分類チェック

Unicodeの各文字には公式の分類があります:文字、数字、記号、空白、 書式など。入力欄の検証は、この分類でふるいにかけることがよくあります。 「名前には最低1文字必要」という欄は、ハングル埋め文字(分類:文字)を 通し、ゼロ幅スペース(分類:書式)を弾きます。メッセージ欄は緩めなので、 名前欄で失敗した文字がチャットでは普通に使える、という現象が起きます。

当サイトのライブラリが36文字を3つの グループに分けているのは、まさにこの理由からです。グループ分けがそのまま 「どこで使えるか」の予測になっています。

仕組み3:バイト数の上限

内部的には、テキストの長さはバイトで数えられます。半角英数は1バイト、 ひらがなや漢字は3バイト — そして見えない文字の多くも3バイト です。20バイト制限の名前欄に日本語4文字(12バイト)を入れると、残りは 見えない文字2つ分しかありません。「見た目は短いのに長すぎると言われる」 ときは、ほぼこれが原因です。ジェネレーターのバイトカウンターで正確な 重さを確認してください。

自分で診断する4ステップ

  1. コピーの中身を見る。確認エリアに貼り付けて、見えない文字がゼロなら、問題はコピー元。アプリではありません。
  2. 分類を合わせる。名前欄で失敗したなら、「名前に使える文字」グループから選び直します。
  3. バイトを数える。「長すぎる」と言われたら、見えない文字を減らすか、見える部分を短くします。
  4. 文字を替える。アップデートで仕様が変わることがあります。1つがダメでも、同じグループの隣の文字は通ることが多いです。

こちら側では直せないケース

プラットフォームが特定の文字を全面的に弾くと決めた場合、それはそのサービス の方針であり、永久に通用する「魔法の文字」は存在しません。当サイトでは 利用者からの報告をもとにツールページの情報を更新しています。3つの仕組みを 知っていれば、少なくともどの段階で止まったのかは正確に分かります — それが解決の半分です。