連続スペースのまとめ:コピーした文章の隙間を整える
Web ページ、PDF、表計算からコピーした文章には、途中にスペースの連続が残ります。まとめても文字は変わらず、間隔だけが戻ります。
本当に必要になる場面
Web ページの本文が典型的です。位置合わせのために複数のスペースが入っており、コピーしてもそのまま残ります。PDF から文字を取り出すと語の間に不揃いな隙間ができ、段落が間延びして行の長さもばらつきます。
表計算からコピーした列、チャット履歴、OCR の結果にも同じ乱れがあります。メールやフォーム、文書に貼る前に 1 回まとめておくと、レイアウトが安定し、スペースの数の違いで照合に失敗することも減ります。
- Web や PDF からコピーした連続スペース
- OCR 結果の不揃いな語間
- メールやフォームに貼る前の整理
変わる部分と変わらない部分
連続するスペースとタブを 1 つのスペースにまとめ、それ以外の文字には触れません。行頭のインデントも削除ではなく 1 つのスペースに圧縮されるため、左側にわずかな隙間が残ります。完全に左揃えにしたいときは、続けて前後の空白の削除を行います。
対象外の空白もあります。改行は残るため行の構成は変わりません。全角スペース U+3000 は半角スペースではないのでまとめられず、中国語の広い隙間はそのままに見えます。改行しない空白 U+00A0 も残ります。
- 連続するスペースとタブは 1 つになる
- 行頭のインデントは 1 つのスペースになる
- U+3000 と U+00A0 は対象外
代替手段と使わない場面
コードには使わないでください。インデントが 1 つに圧縮されると Python はすぐエラーになり、他の言語でも読みやすさが損なわれます。スペースで位置を揃えている箇所は特に危険です。Markdown の行末の 2 つのスペースは強制改行を意味し、これも失われます。
行末の空白だけを消したいなら、エディタの正規表現置換のほうが正確です。全角スペースも消したいなら、先に半角へ変換してからまとめます。段落構造を保ちたいときは、空行の削除とスペースのまとめを分けて行ってください。
よくある質問
中国語の隙間が変わらないのはなぜですか?
その隙間は半角スペースではなく、全角スペース U+3000 や改行しない空白 U+00A0 であることが多いためです。本ツールは半角スペースとタブだけをまとめます。先に全角から半角へ変換してください。
行頭にスペースが 1 つ残るのはなぜですか?
連続する空白を 1 つに圧縮するだけで、削除はしないためです。完全に左揃えにしたい場合は、続けて行頭と行末の空白を削除してください。
改行も削除されますか?
削除されません。対象はスペースとタブだけで、改行はそのまま残るため行の構成は変わりません。1 行にまとめたい場合は複数行を 1 行にするツールを使ってください。
関連ツール:連続スペースのまとめ