🔗 URLエンコード/デコード

URLやクエリパラメータのエンコード・デコードを行います。

使い方・活用例

  • コンポーネント: クエリパラメータの値をエンコードする場合に使用(記号を全てエンコード)
  • URL全体: URL全体をエンコードする場合に使用(:, /, ? などはそのまま)
  • URLパーサー: URLを構成要素(プロトコル、ホスト、パス、クエリ、フラグメント)に分解
  • クエリビルダー: キーと値のペアからクエリ文字列を自動生成

URLエンコード/デコードとは

URLエンコードは、URL内に含められない文字(スペース、「&」「=」など)を特殊な形式に変換する仕様です。例えば「田中 太郎」は「%E7%94%B0%E4%B8%AD%20%E5%A4%AA%E9%83%8E」に変換されます。このツールでは、日本語を含むテキストをURLエンコードしたり、逆にエンコード済みURLをデコードして元のテキストを復元したりできます。APIのクエリパラメータ設計やSEOキーワード最適化の際に不可欠です。

使い方ガイド

上部の「テキスト入力」欄に、エンコード前のテキストまたはエンコード済みURLを貼り付けてください。「エンコード」または「デコード」ボタンをクリックすると、結果が下部に表示されます。日本語を含む場合、自動的にUTF-8エンコーディングで処理されます。変換結果はワンクリックでコピーでき、複数行テキストにも対応しています。「リセット」ボタンで入出力をクリアし、新規の変換を開始できます。

活用シーン

・ECサイトのクエリパラメータ設計:「?search=ウォーターボトル&category=スポーツ」といった検索条件をURLに安全に埋め込み、ブックマーク可能なリンク生成ができます。
・メール送信フォームの自動化:Excelシートの顧客データ(名前や住所に日本語含む)をURL形式に一括変換し、MailChimpなどのマーケティングツールに連携できます。
・APIドキュメント作成時の例示:複数国語のリクエストパラメータを安全にURL形式で記載し、技術者が確実に理解できるようにします。
・SNS投稿URLの作成:Twitterシェアリンクで日本語タイトルを含める際、このツールでエンコードしてから埋め込むことで文字化けを防げます。

よくある間違いと解決法

・誤り:「スペースは「+」で代置できる」と認識し、古い形式を使用している。実際には、モダンなURLエンコード標準(RFC 3986)ではスペースは「%20」で表すべきで、「+」は一部の形式でのみ有効です。
・誤り:「デコード時に元の言語が変わることがある」と思い込む。実はエンコード/デコードは可逆変換であり、UTF-8で正しく変換されれば必ず元のテキストが復元されます。

知っておきたいポイント

URLエンコードは文字集合によって異なります。ASCII文字範囲内の「A-Z a-z 0-9 - _ . ~」以外すべてが「%XX」形式(16進2桁)に変換されます。日本語1文字は通常3〜4バイトのUTF-8バイト列に変換されるため、3〜4個の「%XX」ブロックになります。SEOの観点では、可読性重視のため日本語URLを使う際は、サーバー側でPunycode(国際化ドメイン名)またはデコード表示を組み合わせるベストプラクティスがあります。

よくある質問

URLエンコードの使い方は?

テキストを入力してエンコードボタンを押すと、パーセントエンコーディングされた文字列が生成されます。

日本語のURLもエンコードできますか?

はい。日本語を含むすべてのUnicode文字を正しくエンコード・デコードできます。

URLエンコードが必要な文字は?

スペース、日本語文字、記号(&, =, ?, #など)はURLエンコードが必要です。これらの文字は%XXの形式に変換されます。

パーセントエンコーディングとは同じものですか?

はい。URLエンコードとパーセントエンコーディングは同じ意味です。RFC 3986で規定されているURL中の特殊文字のエスケープ方式です。

スペースはどのようにエンコードされますか?

スペースは「+」または「%20」に変換されます。クエリ文字列では「+」が一般的で、通常のURLパスでは「%20」が使用されます。

URL内の予約文字(/、:、?など)もエンコードされますか?

予約文字もコンテキストに応じてエンコードされることがあります。例えば「?」はクエリ文字列の開始記号なため、クエリ値に含まれる場合は%3Fにエンコードされます。

文字化けしたテキストをデコードしたい場合は?

このツールはUTF-8で統一処理しているため、UTF-8以外の文字コード(ShiftJIS等)で作られたテキストは正しくデコードできません。元のコード種別の確認が必要です。

複数のURLを一度にエンコード/デコードできますか?

1つずつの処理になります。複数のURLがある場合は、改行で区切った後に個別に処理するか、外部スクリプトで一括処理してください。

エンコード前後の文字列の違いを比較できますか?

ツール内では入出力が並べて表示されるため、ビジュアルで確認できます。コピーボタンで個別にコピーして、別の場所で詳しく比較することも可能です。

URLにはどの程度の長さまでエンコード可能ですか?

ツール上での処理制限はほぼありませんが、ブラウザのURL長制限は2,000~8,000文字、サーバー側の上限も異なります。実用では環境に応じた制限を考慮してください。