ToolConvoyToolConvoyv2.6
CODE

URL デコード — URL エンコード文字列をオンラインでデコード

URL エンコード文字列をプレーンテキストに復元します。パーセントエンコーディング、プラス記号のスペース変換、マルチバイト UTF-8 シーケンスに対応。ブラウザで完結します。

● ローカル動作 · メモリ内でエンコードページ読み込み以降のツールによる通信:0件

URL エンコーディングは、Web を機能させるためのエスケープ機構です。URL 内で特別な意味を持つすべての文字 — スペース、クエスチョンマーク、アンパサンド、等号、ハッシュ、そしてすべての非 ASCII 文字 — は、バイトの 2 桁の 16 進値の後にパーセント記号を付けた形に置き換えられます。このエンコーディングにより、URL はあらゆるチャネル(プレーンテキスト、HTML 属性、JSON 文字列、SMS メッセージ)を介して、周辺のコンテキストの解析ルールで URL が壊れるリスクを心配せずに、安全に送信できます。デコードはその逆の操作です。エンコードされた文字列を受け取り、元のテキストを復元します。処理自体は単純なルックアップテーブルですが、デコーダーを本当に有用にしているのはエッジケースです:スペースの + と %20 の使い分け、複数のエンコード層を通過した URL の二重デコードの復元、そしてマルチバイト UTF-8 シーケンスの正しい処理です。

本 URL デコードツールは、RFC 3986 で定義された Percent-Encoding 仕様全体に準拠しています。デフォルトモードは入力中のすべての %XX と + をデコードします — 単一のクエリパラメータ値やエンコードされたテキストの断片に適したモードです。フル URL モードは URL の構造 — スキーム、ホスト、パス、クエリ区切り文字(?)、フラグメント区切り文字(#) — を保持し、各コンポーネント内のパーセントエンコードされた文字のみをデコードします。「繰り返しデコード」のトグルはデコーダーを繰り返し適用し、二重にエンコードされた文字列を復元します(エンコード済みの値を含む URL が、さらに別の URL に埋め込むためにエンコードされる、というよくあるケースに対応します)。出力は元のテキストそのままなので、表示、保存、さらなる処理にすぐに使えます。

広告

使い方

  1. エンコード済み文字列を貼り付ける

    クエリパラメータ、フォーム送信、リダイレクト URL など、URL エンコードされた文字列を貼り付けます。デコーダーはパーセントエンコードシーケンス(`%20`、`%3D`、`%C3%A9`)を元の文字に戻し、`+` をスペースに置き換えます。

  2. デコードオプションを選ぶ

    「URL 全体をデコード」(URL の構造 — スキーム、ホスト、パス、クエリ — を保持する)と「クエリ文字列部分のみをデコード」(すべての `%XX` と `+` をデコードする)を切り替えられます。フル URL モードではスラッシュとコロンはそのまま保持されます。

  3. デコード結果をコピーする

    デコードされたテキストをコピーします。出力はプレーンテキストか、読みやすい URL のいずれかになり、選択したモードによって異なります。URL 経由でデータをラウンドトリップする場合は、付属の URL エンコードツールで再エンコードしてください。

よくある質問

パーセントエンコーディングとは何ですか?

パーセントエンコーディング(URL エンコードとも呼ばれます)は、予約文字と非 ASCII 文字を `%` の後にバイトの 2 桁の 16 進値で置き換えます。スペースは `%20`、等号は `%3D`、é は `%C3%A9`(U+00E9 の 2 バイト UTF-8 エンコーディング)になります。

エンコードされた文字列で `%20` の代わりに `+` が使われるのはなぜですか?

`application/x-www-form-urlencoded` コンテンツタイプ — HTML フォームで使用されます — は、スペースを `%20` ではなく `+` としてエンコードします。これは初期の Web からのレガシーな慣習です。本デコーダーは両方に対応しています:`+` はスペースに、`%20` もスペースになります。

二重エンコーディングにも対応していますか?

はい — 「繰り返しデコード」をオンにすると、出力が変わらなくなるまでデコーダーが繰り返し適用されます。これにより、二重にエンコードされた文字列(`%25` → `%` → デコードされた文字)を復元できます。複数のエンコード層(フォーム → リダイレクト → URL 短縮)を経由した URL のデバッグ時に便利です。

クエリ文字列全体をキーと値のペアにデコードできますか?

構造化されたキーと値のデコードには、付属のクエリ文字列パーサーツールをご利用ください。URL デコードツールは生の文字列をデコードします。個々のクエリパラメータに名前で構造的にアクセスしたい場合は、クエリ文字列パーサーが適切なツールです。

制限事項

  • 壊れたエンコーディングは修復しませんデコーダーは有効なパーセントエンコーディングを想定しています。不正なシーケンス(`%ZZ`、`%G`、`%`)は出力にそのまま残ります。誤ったエンコーディング解釈による文字化けを修復したい場合は、文字セット変換ツールをご利用ください。
  • Unicode 正規化は行いませんデコーダーはパーセントデコード後のバイトをそのまま出力します。正準表現を保証するための Unicode 正規化(NFC/NFD)は適用されません。視覚的に同一の 2 つの文字列でも、内部のコードポイントシーケンスが異なる場合があります。
  • Base64 は検出しませんURL エンコードと Base64 エンコードが重なったデータ(JWT トークンや一部の API ペイロードで一般的)は、URL エンコード層でのみデコードされます。Base64 層はエンコードされたままです。2 層目の処理には Base64 デコードツールをご利用ください。

プラットフォーム別の注意点

macOS
ターミナルでの同等コマンドは `python3 -c 'import urllib.parse; print(urllib.parse.unquote("string"))'` です。ブラウザ版ツールでは二重デコードのトグルと、フル URL を保持するモードが追加されています。
Linux
`printf '%b' "$(sed 's/+/ /g;s/%/\\x/g')"` は、URL デコードでよく使われるシェルワンライナーです。ブラウザ版ツールはマルチバイト UTF-8 シーケンスを正しく処理しますが、シェルベースのデコーダーは失敗しやすいポイントです。
Web
すべてブラウザ内で完結します。エンコードされた文字列はローカルで処理され、デコードのためにサーバーにデータが送信されることはありません。
広告

関連ツール

広告