🔗 URLエンコーダー&デコーダーツール
高度なオプションとリアルタイム処理で、テキストをURLエンコード形式(パーセントエンコーディング)との間で変換します。
URLエンコーディングツール
安全なURL転送のために特殊文字をエンコードするか、URLエンコードされた文字列を読み取り可能なテキストにデコードします。
🎯 URLエンコーディングとは?
URLエンコーディング(パーセントエンコーディングとも呼ばれる)は、Uniform Resource Identifier(URI)で情報をエンコードするためのメカニズムです。安全でないASCII文字を「%」とそれに続く2つの16進数で置き換えることにより、文字をインターネット上で転送できる形式に変換します。
このエンコーディング方法は、URLがASCII文字セットの限られた文字しか含めないため不可欠です。このセット外の文字や、URLで特別な意味を持つ文字は、適切な転送と解釈を保証するためにエンコードする必要があります。
🔧 一般的な使用例
📊 一般的なURLエンコード文字のリファレンス
| 文字 | 説明 | URLエンコード |
|---|---|---|
| (space) | スペース | %20 or + |
| ! | 感嘆符 | %21 |
| " | 二重引用符 | %22 |
| # | ハッシュ | %23 |
| $ | ドル記号 | %24 |
| % | パーセント | %25 |
| & | アンパサンド | %26 |
| ' | 一重引用符 | %27 |
| + | プラス記号 | %2B |
| , | コンマ | %2C |
| / | スラッシュ | %2F |
| : | コロン | %3A |
| ; | セミコロン | %3B |
| = | 等号 | %3D |
| ? | 疑問符 | %3F |
| @ | アットマーク | %40 |
❓ Frequently Asked Questions
URLエンコーディングは、文字をインターネット上で安全に送信できる形式に変換します。URLはASCII文字セットのみを使用して送信できるため、このセット外の文字はエンコードする必要があります。さらに、特定のASCII文字はURLで特別な意味を持つため(例:?、&、=)、構文ではなくデータとして使用する場合はエンコードする必要があります。URLエンコーディングは、これらの文字を%とそれに続く文字のASCIIコードを表す2つの16進数で置き換えます。
%20と+はどちらもURL内のスペースを表すことができますが、異なるコンテキストで使用されます。+記号はクエリ文字列やフォームデータ(application/x-www-form-urlencoded)で使用され、%20はURLの他のすべての部分で使用される標準のパーセントエンコーディングです。現代のアプリケーションでは一貫性のために通常%20が使用されます。URLのパスコンポーネントでは%20のみが有効ですが、クエリ文字列では両方が受け入れられますが、%20の方がより普遍的です。
エンコードが必要な文字には、1) 特別な意味を持つ予約文字(: / ? # [ ] @ ! $ & ' ( ) * + , ; =)、2) スペース、引用符、<、>、#、%、{、}、|、\、^、~、[、]、`などの安全でない文字、3) 非ASCII文字(アクセント付き文字、漢字、絵文字など)が含まれます。英数字(A-Z、a-z、0-9)および予約されていない文字(- _ . ~)は通常エンコードする必要はありません。
encodeURI()は完全なURIをエンコードするために設計されており、URIで特別な意味を持つ文字(:、/、?、&など)はエンコードしません。URL全体をエンコードしつつ、その構造を維持したい場合に使用します。encodeURIComponent()は、予約されていない文字(A-Z、a-z、0-9、-、_、.、~)を除くすべてをエンコードし、クエリパラメータなどの個別のURIコンポーネントをエンコードするために使用されます。ユーザー入力やURLに配置するデータをエンコードするほとんどのユースケースでは、encodeURIComponent()がより安全な選択です。
URLエンコーディングは、Unicode文字をまずUTF-8でエンコードし、次に各バイトをパーセントエンコーディングすることで扱います。たとえば、漢字「中」(U+4E2D)はUTF-8で3バイト(E4 B8 AD)にエンコードされ、URLエンコーディングでは%E4%B8%ADになります。これにより、どの言語のどの文字でもURLで安全に送信できます。