Skip to content

コピー&ペースト · 文字リファレンス

ソフトハイフン(U+00AD):見えないハイフン

見えないハイフン(U+00AD)をワンクリックでコピーし — そして何より、PDFから貼り付けたテキストが検索・検証・インポートを拒む理由を理解するために役立ててください。

手動で選択する

ボックスをクリックして文字を選択し、Ctrl + C(Mac は ⌘ + C)を押します。

文字
Soft Hyphen
Unicode
U+00AD
HTML 実体参照
­
プレーンテキスト代替
-

ハイフン系

複合語・名前・コードをつなぐ短いダッシュ。

文字ごとのコピーページ:ハイフンUnicode ハイフンノーブレークハイフンソフトハイフン

ソフトハイフン(U+00AD、HTMLでは ­ と書く)は、見えないように設計された唯一のハイフンです。行の折り返しが必要になったとき単語をどこで分けてよいかをレンダラーに伝える — 読むための文字ではなく、組版上のヒントです。その地点で折り返しが起これば行末に本当のハイフンが現れ、起きなければ文字はまったく目に見える空間を占有しません。新聞・書籍・長文組版はこの発想を1世紀使っており、Unicodeはファイルがテキストとともにヒントを運べるようコードポイントを与えました。

ウェブとデータの世界では、この不可視性こそが問題です。ソフトハイフンはスペースではないので奇妙な隙間として現れず、ハイフンでもないので「-」の検索では見つからず、対応するキーが存在しないので検索置換ボックスに入力できません。PDFからコピーしたテキストが古典的な供給源です。PDF生成器は改行を制御するため単語の中に任意ハイフンを散らばらせ、コピーするとそれらが一緒についてきます。だからPDFから貼り付けた一節が、手で打った同じ一節と一致しないことがあるのです。ワープロからデータベースの欄、スプレッドシートのセル、検索ボックスへ移ったテキストにも同じことが起こります。

被害は具体的で、見過ごしやすいものです。「infor­mation」を含む検索インデックスは「information」というクエリに一致しません。非ASCIIバイトを拒むユーザー名バリデータは、ユーザーが見えなくてもソフトハイフンを拒みます。文字数カウントはそれを数えます。コードエディターは文字列中の不正な文字として旗を掲げ、時には何も悪く見えない桁を指すエラーメッセージを出します。解決は文字の除去です。このサイトのハイフン除去ツールは U+00AD をコードポイントで照合し、残されたスペースの後始末もして削除します。どのキーボードも作れない文字を取り除くには、これが唯一の確実な方法です。

ソフトハイフンの入力方法

すべてのプラットフォームのキーボードショートカット。入力せずに上のカードからコピーもできます。

プラットフォームショートカット
Word(Windows・Mac共通)Ctrl + - で単語内に任意(ソフト)ハイフンを挿入
Google Docs挿入 → 特殊文字 →「soft hyphen」を検索
Windows(すべてのアプリ)テンキーで Alt + 173
HTML­ または ­ — 名前付き実体を持つ唯一のハイフン変種
Macショートカットなし・表示なし — 上でコピー、または絵文字と記号
Word(表示)ホーム → ¶ 編集記号の表示/非表示でテキスト中に表示

ソフトハイフンの使用例

文字が本来の役割を果たしている例と、別のダッシュに置き換えたときの変化。

単語内、折り返しに備える

exam¬ple(行が必要になるまで見えない)

PDFからコピー&ペースト

infor¬mation retrieval

識別子の中

cus¬tomer_id

URLやコード断片の中

https://dash¬remover.com

見えない文字を見つける方法

テキストに不可視ハイフンが潜んでいることを示す4つの症状と、それぞれへの対処です。このページではソフトハイフンを¬として描画しています — 表示できない文字に対してUnicodeが推奨する代替記号です。

一致するはずの検索が一致しない

手で一節を打っても検索エンジンは何も見つけないのに、テキストは明らかにページ上にあります。2つの文字列は、見えない1文字だけで違っています。

一見きれいな値をバリデータが拒否する

ユーザー名、メールのローカル部、スラッグが拒否されるのに、目に見える文字はすべて合法です — 見えない1文字が合法ではないのです。

カーソルが何もない所で止まる

矢印キーで1文字を越えるのに2押しが必要になったり、コードエディターが空に見える桁に予期しない文字があると報告したりします。

文字数と長さが食い違う

文字数がテキストの見た目より多い、または長さ上限つきのデータベース欄が、目では収まる文字列を拒否します。

これらの診断は、いくら見つめても確定しません — この文字は見えないように設計されているからです。コードポイントで確定してください。行をダッシュ識別ツールに貼り付ければ見つかったソフトハイフンを報告し、その後テキストをハイフン除去ツールできれいにします。

エムダッシュ vs エンダッシュ vs ハイフン

似ているのに挙動が決して同じではない 3 つの文字。必要なものをコピーするか、各文字の詳細なリファレンスをお読みください。

質問

ソフトハイフンとは何ですか?
行の折り返しが必要なとき単語をどこで分けてよいかを示す隠し文字(U+00AD)です。折り返しが起きない限り見えず、起きたときに行末にハイフンが現れます。HTMLでは ­ と書きます。
ソフトハイフンはどう入力しますか?
Wordでは Ctrl + マイナスで任意ハイフンを挿入します。Google Docsでは挿入 → 特殊文字で「soft hyphen」を検索。HTMLでは ­ と書きます。Windowsでは Alt + 173 がほとんどのアプリで使えます。誤って入力することは決してなく、貼り付けで運ばれてきます。
テキスト中のソフトハイフンが見つからないのはなぜ?
見える形を持たず、どのキーボードにもキーがないため、検索置換のダイアログに入力できないからです。Wordで編集記号の表示をオンにすれば姿を現します。あるいはコードポイントで文字を照合するツールに貼り付けてください。それが確実な方法です。
PDFからコピーしたテキストが検索やインポートを壊すのはなぜ?
PDF生成器が改行制御のためにソフトハイフンを埋め込み、コピーすると受け側のすべてに運ばれるからです。見た目が同じ文字列が、検索インデックスやバリデータ、データベースには別の文字列になります。だから貼り付けた一節が一致しないのです。
テキストからソフトハイフンを削除するには?
ハイフン除去ツールにテキストを貼り付けてボタンを1回押します。U+00ADをコードポイントで照合して削除し、除去後に残るスペースも整えます。完全なASCII結果が必要なら、すべてのダッシュを除去ツールがソフトハイフンを他のすべてのダッシュ文字とともに一掃します。
ソフトハイフンはゼロ幅スペースと同じですか?
いいえ。ゼロ幅スペース(U+200B)は折り返しの機会を提供しますが決して印を表示せず、任意の2文字の間で折り返せます。ソフトハイフンは折り返しのときハイフンを表示するため、単語と単語の間ではなく単語の中に使われます。どちらも見えず、どちらも貼り付けテキストに頻出します。

見えないハイフンがトラブルの原因に?

ハイフン除去ツールはソフトハイフンをコードポイントで照合します — 入力できない文字を取り除く唯一の方法です。

ソフトハイフンを削除