FIRST CH TOOLS / テキスト / 41 ZENKAKU ⇄ HANKAKU
全角⇄半角変換&テキストクリーナー(見えない文字の検出・削除)
英数字・カタカナ・記号・スペースを、文字種ごとに向きを選んで全角⇄半角へ変換します。半角カナの ガ(2文字)と全角の ガ(1文字)も正しく行き来します。あわせて連続する空白・行頭行末の空白・空行を掃除し、全角スペースやゼロ幅文字のような「見えない汚れ」を数えて知らせます。顧客支給原稿の表記統一と、CSV取り込み前の正規化のための道具です。
入力すると即時に変換されます
改行コード(LF / CRLF)とタブ、ひらがな・漢字は変えません。改行コードや文字コードの変換は 文字コード・改行コード変換、識別子の camelCase ⇄ snake_case は 文字列ケース変換 にあります。
どの文字が対象になるか
| 文字種 | 全角 | 半角 |
|---|---|---|
| 英数字 | ABC abc 012 | ABC abc 012 |
| カタカナ | アイウ ガ パ ヴ | アイウ ガ パ ヴ |
| 句読点・カギ括弧・中黒・長音 | 。 、 「 」 ・ ー | 。 、 「 」 ・ ー |
| 濁点・半濁点 | ゛ ゜ | ゙ ゚ |
| 記号 | ! # % & @ : - / + = ~ | ! # % & @ : - / + = ~ |
| スペース | U+3000(全角スペース) | U+0020・NBSP・欧文の各種スペース |
| ひらがな・漢字 | あ 漢 | 半角が無いため変換しません |
句読点とカギ括弧はカタカナと同じ扱いです。。 、 「 」 ・ ー は半角カタカナのブロック(U+FF61〜U+FF9F)に同居しているためで、「カタカナ=半角へ」を選ぶと 「テスト」。 は 「テスト」。 になります。句読点を全角のまま残したいときは、カタカナは「そのまま」にしてください。
半角カナは文字数が変わります。ガ は全角では1文字ですが、半角では カ + ゙ の2文字です。文字数制限のあるフォームやレシートの印字幅を見積もるときは、変換後の文字数(このページの「変換後の文字数」)で数えてください。
波ダッシュ 〜(U+301C)と全角チルダ ~(U+FF5E)、環境依存文字(① ㈱ Ⅲ)は、見つけても勝手には直しません。どちらへ寄せるべきかは原稿の届け先で変わり、黙って書き換えると別の文字化けを生むためです。件数だけをチェック結果に出します。
How to Use
- 組み合わせを選ぶ「日本語の標準」は英数字・記号・スペースを半角に、カタカナを全角にします。文字種ごとに「そのまま/半角へ/全角へ」を個別に変えることもできます。
- 原稿を貼り付ける貼った瞬間に右へ結果が出ます。連続する空白・行頭行末の空白・空行の掃除は下のチェックボックスで足します。
- コピーする右の欄をコピーしてそのまま納品物やCSVへ戻します。半角カナや全角スペースが残っていればチェック結果に出ます。
zenkaku / hankaku ― 全角・半角の呼び方
ローマ字の zenkaku・hankaku と、英語の full-width・half-width
zenkaku / hankaku は「全角」「半角」をそのままローマ字書きしたもので、日本語を扱うコードや設定値の中でよく使われます。英語の資料では full-width / half-width と書かれ、Unicode もこちらの言い方を採っています。英語で書かれた手順に合わせて読みたいときは、このページの英語版 Full-width ⇄ Half-width Katakana Converter をどうぞ。
Unicode では、幅は文字の名前に書いてある
全角の A(U+FF21)の正式名称は FULLWIDTH LATIN CAPITAL LETTER A、半角カナの ア(U+FF71)は HALFWIDTH KATAKANA LETTER A です。どちらの幅かは文字そのものが持っている情報で、表示フォントの都合ではありません。例外は全角スペースで、これだけは IDEOGRAPHIC SPACE(U+3000)という別系統の名前が付いています。見た目は半角スペースと区別がつかないのに別の文字、という事故が起きるのはこのためです。
East Asian Width だけで判定すると漏れる
自前で判定を書くときによく使われる East Asian Width プロパティは、A や ! が F(Fullwidth)、ア カ ゙ が H(Halfwidth)です。ところがふつうのカタカナ ア と漢字 漢 は W(Wide)で、F ではありません。「F のものだけを全角とみなす」条件で書くと、カタカナと漢字がまるごと判定から漏れます。このツールは幅プロパティではなく文字種ごとの対応表(上の「どの文字が対象になるか」)で変換しているので、この取りこぼしは起きません。
About This Tool
全角と半角の統一は、文字種ごとに向きが違うのが普通です。日本語の原稿で最も多いのは「英数字と記号は半角・カタカナは全角」で、共同通信の記者ハンドブックをはじめ多くの表記ルールがこの形を採っています。ひとつのボタンで全部を半角(または全角)にしてしまうと、カタカナ が半角になったり英数字が ABC になったりして、かえって直す手間が増えます。このツールが文字種ごとに3択を持っているのはそのためです。
半角カタカナは「1文字」ではありません。濁点つきの ガ は、半角では カ と ゙ の2文字に分かれます。単純な文字の置き換えでは ガ が カ+゛ のような中途半端な形に崩れますが、このツールは半角カナから全角へ戻すときに次の文字が濁点なら1文字へ合成し、全角から半角へ送るときは2文字へ分解します。ヴ(ヴ)や パ(パ)も同じです。
CSV取り込みでつまずく原因の多くは「見えない文字」です。全角スペース(U+3000)はセルの中では空白と区別がつかず、キーの突合が静かに失敗します。Wordやブラウザからのコピーには NBSP(U+00A0)が混ざり、これも半角スペースには見えて別の文字です。加えてゼロ幅スペース・BOM・制御文字は画面上まったく見えません。「CSV取込前」のプリセットは、これらを半角スペースへ寄せたうえで連続空白をまとめ、行頭行末を削り、見えない文字を取り除きます。
濁点が別の文字になっている原稿もあります。macOS で作られたファイル名や、そこからコピーした文字列は ガ が カ+結合文字(U+3099)の2文字で表されていることがあり、見た目は同じなのに検索に引っかからず、文字数も合いません。「濁点を合成する(NFC)」を有効にすると1文字へまとめます。該当する文字があれば、オプションを入れていなくてもチェック結果に件数を出します。
Unicode の NFKC 正規化とは意図的に別物です。NFKC は全角英数字も半角カナも一気に潰しますが、同時に ① を 1、㈱ を (株)、¥ を ¥ に変え、上付き文字やリガチャまで書き換えます。原稿の表記統一でそこまでやると、直したくないところが黙って変わります。このツールは文字種ごとに選んだ範囲しか触りません。環境依存文字や波ダッシュは指摘だけして、変換するかどうかは人が決められるようにしています。
空白の掃除は変換のあとに走ります。「連続する空白を1つにまとめる」は、半角スペース・全角スペース・タブ・NBSP の連なりを先頭の1文字に縮めます(全角スペースだけが並んでいれば全角スペース1つが残ります)。行頭行末の削除はこれらすべてを対象にし、空行は「そのまま/連続する空行を1つに/すべて削除」から選べます。改行コード(LF / CRLF)は書き換えませんので、Windows で作られたファイルを整形しても改行が混ざりません。
貼り付けたテキストがブラウザの外へ出ることはありません(変換もチェックもすべて手元で動いています)。URLパラメータで直接呼び出せます: /zenkaku/?text=テスト&preset=ja / /zenkaku/?text=A%20B&alnum=han&space=han&collapse=1&trim=1
From AI Agents
この変換ロジックは、MCP(Model Context Protocol)サーバー @first-ch/tools-mcp の zenkaku_convert ツールとしても提供しており、ブラウザを使わずAIエージェントから直接呼び出せます。支給された原稿ファイルの表記統一や、取り込み前のCSVの正規化のように、規則が決まっている定型処理をそのまま任せられます。導入方法の詳細は AIエージェントからの使い方 を参照してください。
導入
claude mcp add firstch-tools -- npx -y @first-ch/tools-mcp
呼び出し例
# 日本語の標準(英数字・記号・スペースは半角/カタカナは全角)へ揃える zenkaku_convert(text="株式会社ABC テスト", preset="ja") # CSV取り込み前の正規化(空白の掃除と見えない文字の除去まで) zenkaku_convert(path="/tmp/list.csv", preset="csv", outputPath="/tmp/list.clean.csv") # 文字種ごとに向きを指定する(カタカナだけ半角のまま残す) zenkaku_convert(text="アイウ ABC", alnum="han", kana="keep", symbol="han", space="han") # 変換せずに、半角カナ・全角スペース・見えない文字が残っていないかだけ調べる zenkaku_convert(path="/tmp/draft.txt", inspect=true)
Other Tools
- 01画像→WebP一括変換WebP Converter
- 02白背景の透過White BG Remover
- 03コントラスト比チェッカーContrast Checker
- 04文字数カウントCharacter Counter
- 05llms.txt ジェネレーターllms.txt Generator
- 06JSON-LD構造化データ生成JSON-LD Generator
- 07Markdown→PDF変換MD → PDF
- 08OGPメタタグ生成ウィザードOGP Wizard
- 09faviconジェネレーターFavicon Generator
- 10TikTok投稿ツールTikTok Publisher
- 11文字コード・改行コード変換Encoding Converter
- 12画像→AVIF変換+picture生成AVIF Converter
- 13テストデータ生成Test Data Generator
- 14Marp Markdown→スライドMarp Slides
- 15テキスト・コード差分チェッカーDiff Checker
- 16Cron式ビジュアル解説&発火日時Cron Explainer
- 17Base64 & Data URI変換Base64 & Data URI
- 18URLパラメータ分解・UTMタグ編集URL Parameters
- 19HTMLエンティティ・特殊文字エスケープHTML Escape
- 20JSON ⇄ YAML 相互変換&整形JSON ⇄ YAML
- 21PX ⇄ REM / EM 単位変換&スケール表PX ⇄ REM / EM
- 22Colorコード変換&アルファ透過Color Converter
- 23MD5 / SHA-256 ハッシュ生成Hash Generator
- 24JWTデコーダー&有効期限チェッカーJWT Decoder
- 25User-Agent解析&デバイス判定User-Agent Parser
- 26UUID (v4) & ULID 一括生成UUID & ULID Generator
- 27アスペクト比計算&レスポンシブサイズAspect Ratio Calculator
- 28Markdownテーブル整形&CSV/TSV変換Markdown Table
- 29SQLクエリフォーマッター&整形SQL Formatter
- 30QRコード生成QR Code Generator
- 31正規表現テスターRegex Tester
- 32UNIXタイムスタンプ⇄日時変換Unix Time Converter
- 33新規タブメモ帳New Tab Memo
- 34画像リサイズ&クロップImage Resizer
- 35EXIF情報の確認&除去EXIF Viewer
- 36robots.txt ジェネレーターrobots.txt Generator
- 37安全なパスワード生成Password Generator
- 38文字列ケース変換Case Converter
- 39CSV/TSV ⇄ JSON 相互変換CSV ⇄ JSON
- 40PDF結合・分割・ページ抽出PDF Merge & Split
- 42X(Twitter)投稿の文字ウェイト計算X Post Counter
- 43CSS clamp() フルイドタイポグラフィ計算機CSS clamp() Calculator
- 44CSSグラデーションジェネレーターCSS Gradient Generator
- 45画像からカラーパレット抽出Palette Extractor
- 46QRコード読み取りQR Code Reader
- 47SVG最適化&data URI化SVG Optimizer
- 48リダイレクトルール ジェネレーターRedirect Generator
- 49IPアドレス・CIDR計算機CIDR Calculator
- 50カレンダー予定(.ics)ジェネレーターICS Generator
- 51イージング(cubic-bezier)プレビュー&比較Easing Preview
- 52box-shadow ジェネレーターbox-shadow Generator
- 53和文ダミーテキスト生成Japanese Dummy Text
- 54SNS画像サイズ一括書き出しSocial Image Sizes
- 55タイムゾーン変換・世界時計Timezone Converter
- 56日数・営業日計算Business Day Calculator
- 57HTML→Markdown変換HTML → Markdown
- 58HEIC→JPEG/PNG変換HEIC Converter
- 59印刷サイズ・DPI計算機Print DPI Calculator
- 60色覚シミュレーターColor Blindness Simulator
- 61SERPプレビュー&メタタグ文字数チェックSERP Preview
- 62Flexbox / CSS Grid ジェネレーターFlexbox & CSS Grid
- 63テキスト行操作ツールLine Tools
- 64スクリーンショット枠装飾Screenshot Frame
- 65和暦 ⇄ 西暦変換Japanese Era Converter
- 66URLスラッグ生成(日本語→ローマ字)URL Slug Generator
- 67htpasswd ジェネレーターhtpasswd Generator
- 68OGP画像ジェネレーターOGP Image Generator
- 69スタンプ形ジェネレーターStamp Shape Generator
- 70スリープ防止(画面の消灯を止める)Stay Awake
- 71画面録画+クリック自動ズームScreen Recorder with Auto-Zoom
- 723Dデバイスモックアップジェネレーター3D Device Mockup Generator
- 73OpenAPI→日本語ドキュメント&TS型定義OpenAPI Doc Generator
- 74画面レビューボードScreen Review Board
- 75AI活用案件の判断ログメモAI Decision Journal
- 76カードバインダー配置プランナーCard Binder Planner
- 77e-Stat CSV かんたんグラフ化e-Stat CSV to Chart
- 78FAQ構造化データ(JSON-LD)&Markdown ジェネレーターFAQ JSON-LD Generator
- 79コード画像化Code to Image