全角半角変換
テキスト処理はすべてブラウザ内で完結します。データは送信されません
入力
ファイルをここにドロップすると読み込めます
出力
全角モードで入力した英数字(`ABC123`)は、アカウント名・金額・確認コード・コマンドライン引数など半角しか受け付けない場面で弾かれます。このツールは方向を選んでまとめて変換します —— 全角の英数字と記号を半角へ、またはその逆へ。日本語の句読点と英数字記号の境界は Unicode のコードポイントで決まり、「日本語らしく見えるか」では決まりません。どれが変換され、どれが残るかはこれで決まるため、よくある疑問として FAQ に 1 項目を割いています。また `。` `、` `「」` は半角カタカナの `。` `、` `「」` とコードポイントを共有するため、カタカナ変換は既定でオフです。
機能
- 全角の英数字・記号を半角へ、またはその逆へまとめて変換
- 全角 ASCII(U+FF01–U+FF5E)と表意スペース U+3000 に対応
- 全角の通貨・記号(¥ £ ¢ ₩ など 7 種)にも対応 —— 全角 ASCII の範囲外にあり、最も見落としやすい部分です
- 任意で半角カタカナも変換(`ハ` + `゙` を 1 文字の `バ` に合成)
- 日本語の句読点 `。` `、` `「」` `《》` はそのまま —— 半角形が存在しません
- 漢字・絵文字その他の非 ASCII 文字は変更しません
- 2 つの方向は互いに逆演算で、往復すると元に戻ります
- 入力に応じてリアルタイムに更新され、まとめてコピーできます
- 処理はすべてブラウザ内で完結し、テキストは送信されません
使い方
- 方向を選ぶ(全角 → 半角、または半角 → 全角)
- テキストを貼り付ける
- 日本語でカタカナも変換したいときだけ、そのオプションをオンにする
- 結果をコピーする
よくある質問
- 全角の読点は半角になったのに、句点はそのままなのはなぜですか?
- 境界が見た目ではなく Unicode のコードポイントで決まるからです。`,`(U+FF0C) `:`(U+FF1A) `?`(U+FF1F) は全角 ASCII の範囲(U+FF01–U+FF5E)にあり、実際に `,` `:` `?` の全角形なので変換されます。一方 `。`(U+3002) `、`(U+3001) `「」`(U+300C/300D) `《》`(U+300A/300B) は別の範囲にあり、独立した日本語の句読点で半角形が存在しないためそのまま残ります。これは任意の追加項目ではなく「全角半角変換」の定義そのものです。英数字だけ変えて句読点を残す、という指定はできません。
- カタカナ変換が別項目で、既定でオフなのはなぜですか?
- `。`(U+3002) `、`(U+3001) `「」` `・` が、日本語の半角形 `。` `、` `「」` `・` とコードポイントを共有しているからです。オンにすると日本語の句点が半角の小さな丸に、読点が小さな点になります。オンにすれば `ハ`+`゙` のような組が正しく `バ` に合成され、小書きカタカナや長音符にもそれぞれ対応があります。
- 全角スペースとは何ですか?
- U+3000「表意スペース」のことです。幅が漢字 1 文字分で、日本語や中国語の組版で桁を揃えるのに使います。英数字のスペースは U+0020 で、その半分の幅です。半角へ変換すると U+3000 は普通のスペースになり、全角へ変換すると普通のスペースが U+3000 になります —— 半角から全角にすると全体が広く見えるのはこのためです。
- ¥ も変換されたのはなぜですか?
- `¥`(U+FFE5) が `¥`(U+00A5) の全角形だからです。`$`(U+FF04) とは同じ範囲にありません —— 後者は 0xFEE0 を引くだけで `$` になりますが、¥ の半角形はラテン拡張ブロックにあり、個別に列挙する必要があります。該当する記号は 7 つ(`¥ £ ¢ ₩ ¬  ̄ ¦`)で、漏らすと「金額の ¥ は変換されないのに隣の $ は変換される」という、動作が不安定に見える症状になります。
- テキストは送信されますか?
- いいえ。変換はすべてブラウザのメモリ上で行われ、ページは一切リクエストを送りません。オフラインでも動作します。
関連ツール
テキスト整形
テキストログや表からコピーした1列を整形します。重複行の削除、並べ替え、空行・前後の空白・行番号の削除、空白のまとめを個別に切り替えできます。
簡体字・繁体字変換
テキスト中国語を簡体字と繁体字の間で相互変換します。常用語は語単位で置換し、残りは最も一般的な字形を採るため、一部は人の確認が必要です。
命名規則の変換
テキスト14 の命名規則の間で識別子を変換します。fooBarBaz や FOO_BAR のような混在も語に分解し、連続する大文字も語ごとに切ります。
中国語の組版
テキスト中国語と英字・数字の間に空白を入れ、中国語の文脈にある半角約物を全角にし、省略記号を整えます。URL・メールアドレス・インラインコードはそのまま残します。
テキスト差分
テキスト2つのテキストを行ごとに比較し、追加・削除・未変更の行をハイライト表示します。変更は最小差分で整列し、すべてブラウザ内で処理します。
文字数カウント
テキスト英語は単語数、日本語や中国語は字数で別々に数えます。文字数・行数・バイト数・読了時間も同時に出し、すべてブラウザ内で処理するので送信しません。