URIで使用できる文字【2014-10-17更新】
URI (ユーアールアイ;Uniform Resource Identifier)またはURL (ユーアールエル;Uniform Resource Locator)で使用できる文字は、RFC 3986
|
種別 | 文字 | Unicode | 文字名 | 備考 |
---|---|---|---|---|
予約文字 | ! | 0021 | 感嘆符 | RFC2396では非予約文字 |
# | 0023 | 番号記号、井げた | ||
$ | 0024 | ドル記号 | ||
& | 0026 | アンパサンド | ||
' | 0027 | アポストロフィ | RFC2396では非予約文字 | |
( | 0028 | 始め小括弧、始め丸括弧 | RFC2396では非予約文字 | |
) | 0029 | 終わり小括弧、終わり丸括弧 | RFC2396では非予約文字 | |
* | 002A | 星印、アステリスク | RFC2396では非予約文字 | |
+ | 002B | 正符号、加算記号 | ||
, | 002C | コンマ | ||
/ | 002F | 斜線 | ||
: | 003A | コロン | ||
; | 003B | セミコロン | ||
= | 003D | 等号 | ||
? | 003F | 疑問符 | ||
@ | 0040 | 単価記号、アットマーク | ||
[ | 005B | 始め大括弧、始め角括弧 | ||
] | 005D | 終わり大括弧、終わり角括弧 | ||
非予約文字 | 0~9 | 0030~0039 | 数字 | 英数字 ラテン大文字については下記説明を参照 |
A~Z | 0041~005A | ラテン大文字 | ||
a~z | 0061~007A | ラテン小文字 | ||
- | 002D | ハイフンマイナス | ||
. | 002E | ピリオド | 下記説明を参照 | |
_ | 005F | アンダーライン | ||
~ | 007E | チルド | 下記説明を参照 |
ただし、非予約文字のうち「~」(チルド)はユーザ別ホームディレクトリを表す記号として、「.」(ピリオド)は、ファイルの拡張子を区切る記号として用いられることが多いため、それら以外の用途には用いない方がよいでしょう。
また、UNIXは大文字と小文字を区別するのに対しWindowsやMacintoshはこれらを区別しないなど、OSによって扱いが異なり、問題が発生する可能性があるため、ラテン大文字(大文字アルファベット)は用いない方が安全です。
さらに、日本語の文字を含む多国語を用いる方法もありますが、特殊であり、これも問題の要因になることが多いので避けましょう。
まとめると、URIに自由かつ安全に使用できる文字は、次のとおりです。
WindowsやMacintoshではフォルダ名やファイル名に「 」(半角スペース)の使用が認められていますが、予約文字でも非予約文字でもないため、URIには使用できません。そのような場合には、パーセント・エンコーディング(Percent-encoding)またはURLエンコード(URL encoding)と呼ばれる方法を用います。
パーセント・エンコーディングでは、16進数で表した2桁の文字コードを「%」に続けた形式で記述します。例えば、半角スペースの16進数のASCIIコードは「20」なので、「%20」と記述します。例:「my pictures」は「my%20pictures」と記述。
ポイント
ASCIIコードの記号とURLエンコードの対応表
|
||||||||||||||||||||||||||||||||||||
|