本文へスキップ

見えない文字の除去

Invisible Character Remover

貼り付けた文章に紛れたゼロ幅スペース・BOM・ソフトハイフン・双方向制御文字を見つけて取り除きます。

テキストに入っていて目に見えない文字を探します。ゼロ幅スペース、双方向制御文字、ハングルの埋め字、BOMといったものです。文字ごとに名前と位置を示し、選んだものだけを消します。絵文字の中の接合子は既定で残します。消すと家族1つが4人に散らばるからです。

🔒 ブラウザの中だけで動きますunicodecleaninvisiblesecurity

原文

問題が起きた場所からそのまま貼ってください——CMS、PDF、Excel、チャットアプリ、どこからでも。検査はこのタブの中で走ります。

見つかったもの

見えない文字

8

種類の数

5

絵文字をつないでいるもの

3

削除せずに残します

そっくりな字

0

  • U+200DZERO WIDTH JOINER×3絵文字の中で3個を維持

    字をつなぎ、絵文字を家族や職業にまとめます。

  • U+3164HANGUL FILLER×2

    幅はあるのに中身が空のハングル字母です。空白のゲーム名はこれで作ります。

  • U+200BZERO WIDTH SPACE×1

    幅を持たない改行位置です。貼り付けに付いてくる代表格です。

  • U+00A0NO-BREAK SPACE×1

    二つの語を同じ行に留めます。Word や Web ページからよく付いてきます。

  • U+00ADSOFT HYPHEN×1

    語を分けてよい位置を示します。行が分かれるまでは見えません。

何を消すか

整えた結果

4個を削除、1個を普通の空白に置換、3個は意図して保持。

どこにあるか

  • 1行7列ZERO WIDTH SPACECopied​ from a
  • 1行24列NO-BREAK SPACEweb page with pas
  • 2行17列HANGUL FILLERckname: ㅤㅤ⏎Soft­h
  • 2行18列HANGUL FILLERkname: ㅤㅤ⏎Soft­hy
  • 3行5列SOFT HYPHEN ㅤㅤ⏎Soft­hyphen i
  • 4行27列ZERO WIDTH JOINERrvive: 👨‍👩‍👧‍👦
  • 4行29列ZERO WIDTH JOINERive: 👨‍👩‍👧‍👦
  • 4行31列ZERO WIDTH JOINERe: 👨‍👩‍👧‍👦

使い方

  1. 問題が起きた場所からそのまま貼り付けます

    CMSでもPDFでもExcelでもチャットアプリでもかまいません。上の数字が、見えない文字が何個あり、種類がいくつあるかを示します。

  2. それぞれが何のための文字かを読みます

    種類ごとにコードポイント・名前・本来の用途を並べます。紛れ込んだゼロ幅スペースと、仕事をしている異体字セレクタを見分ける方法がそれです。

  3. 何を消すか選びます

    既定値は、ほぼ必ず事故で入るものを消し、ほぼ必ず意図して入っているものを残します。異体字セレクタは既定でオフです。消すと❤️が❤になります。

  4. そっくりな文字も確かめます

    ラテン文字と字形が同じキリル文字・ギリシャ文字と、用字系が混ざった語を別のパネルに並べます。「同じに見えるのに別物の2つの文字列」の、もう半分です。

よくある質問

見えない文字はどうやって入ったのですか

ほぼ必ずコピー&ペーストです。ウェブページは改行位置の手がかりにゼロ幅スペースを使い、PDFはソフトハイフンを使い、BOMを入れるエディタもあります。クリップボードを通っても生き延びて、検索と比較を黙って壊します。

ハングルの埋め字とは何ですか

U+3164とその周辺の、何も描かれないハングルの文字です。名前を空にできないサービスで空のニックネームを作る方法で、だから書き出した会員データにも紛れて出てきます。

双方向制御文字に警告が出るのはなぜですか

アラビア語やヘブライ語では普通の文字です。ソースコードやファイル名の中では、人が読むものと機械が実行するものを食い違わせられます。Trojan Sourceと呼ばれる系統の攻撃で、.txtで終わるように見えるファイル名の仕掛けでもあります。

きれいだと出たら安全ということですか

見えない文字については、そうです。そっくりな文字については違います。ここに入っている混同文字の表はよく使われる部分であって4万行の全体ではなく、1つの用字系だけで書かれた紛らわしい文字列には、混ざったものがないので手がかりがありません。

ここから渡せます

次の一手

このツールが出したものをそのまま受け取れる道具です。