お品書き
書き直し中…
とりあえず、中へどうぞ
↓↓↓
スポンサーリンク

Eメールアドレスは大文字と小文字は区別されない

PC/ネット
Gmailでサブアドレスが無限に作れる方法を使ってショップにGmailのメールアドレスを登録しているのですが

例えば通販ショップであればメールアドレスの後に「+s」とつける、みたいな。

(そうしておくことで、宛先の違いでメールを分類・振り分けしやすくなる。)

しかし、たまに、「メールアドレスが不正です」みたいなエラーで登録できないサイトがある。

仕方がないのでその場合でもドット「 . 」は使える場合がほとんどなので、「 . 」区切りの位置を変えて登録するようにしているけれど・・・

記号は使えるはずなんですけどね。。。

サイトの設計者がそのように作ってしまったのでしょうから、どうしようもないですが。

昔、メールアドレスは大文字と小文字の区別はない、と言うのを知って驚いた憶えがありますが、改めて、メールアドレスに使える文字種を再確認のために検索してみたところ、このような記事を発見。
「メールアドレスのルール」系まとめがそろって間違ってるのでご注意を - 若き何かの悩み
メールアドレスのルールのまとめ系のサイトの内容が間違っています。 なので、この類のまとめは安易に信じないように 、という注意喚起をしておきます。 追記(2013/11/27) twitterやはてブをみていたところ、「ユーザーへの啓蒙という観点ではまとめの内容間違ってない」というご意見をたくさんいただきましたので、補足をしておきますね。 どうも「ルール」と「トラブルを避けるためのガイドライン」が混同されているように思います。まとめで紹介されている内容がユーザ向けの「ガイドライン」なのであれば、「+ 記号使わせてよ」ぐらいしか文句はありません。 ですが、ほとんどのまとめは上記の内容を「ルール」と…
orgachem.hatenablog.com
要するに、記号は使えるはずなのに、「使えない」と書いてある(間違っている)サイトが多い、と言うことですね。

あと意外だったのは、「 ' 」や「 " 」、「 @ 」さえも使えると言う事。。。

正しいルールを自分なりに以下にまとめてみると
※@より前での話。(@より後はドメイン名のルールによる?)
  • 半角の英数字記号であれば使用できない文字はない
  • メールアドレスの最初の文字には英数字と記号
    ! # $ % & ' * + - / = ? ^ _ ` { | } ~ "
    が使える
  • @の直前には英数字と記号
    ! # $ % & ' * + - / = ? ^ _ ` { | } ~ "
    が使える
  • ただし『 ( ) , : ; < > @ [ ] " \ 』に関しては、「 " 」で囲む必要がある
  • " 」で括った場合はほぼ全ての英数字と記号が使える
  • " 」で括った中で「 " 」 と「 ¥ 」を使う場合には、直前に ¥ を置かなければならない。
  • " 」を使う場合には @ の前全体を「 " 」で括る必要がある
  • . 」を連続させてはいけない
    (ただし @ の前全体を「 " 」で囲んでいる場合は可)
という感じでしょうか。

「 " 」で括れば日本語メールアドレスも使えちゃいそうですね。

(あ、その場合は文字参照になるだけか?

メールアドレス@domein.jp

 が

%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%a2%e3%83%89%e3%83%ac%e3%82%b9@domein.jp

になる、みたいな?)

まぁ、普通、わざわざ「 " 」で括って中におかしな文字や記号を入れたりはしないでしょうね。

ただ、RFC5322のルールがそうなっているからといって、実際の運用がそうなっているとは限りません。

メールを送受信するサーバーの設定がどうなっているかによるわけですね。

例えば、Googleアカウントでは

『ユーザー名には、アルファベット(a~z)、数字(0~9)、ダッシュ(-)、アンダースコア(_)、アポストロフィ(')、ピリオド(.)を使用できます。』

となっていますので、その他の特殊文字は使えない仕様ですね。

ただ、ほとんどのメールサーバーで、大文字と小文字は区別されないようです。(稀に区別して処理しているサーバーもあるかもしれませんが、レアでしょうね。)

Googleも実は区別されない模様。

大文字小文字の区別は、ルール( RFC5322 )ではどうなっているのか検索してみたところ、「 RFC5234 で決められた通りにするよ」と書いてあるようで、では RFC5234 ではどうなってるのかというと、「大文字小文字を区別しない」と書いてあるとか?

他にもヘッダで使われる文字は RFC2045 で指定されているけど、RFC2045 では、「 RFC822 で記述されているよ」と書いてあるみたいな、たらいまわし状態という印象・・・(^^;)

まぁ、結論としては、大文字と小文字は区別しないって事でいいか、という運用をしているサーバーがほとんどと言うことなんでしょうね。

試しに、Gmailのアドレス宛に、大文字に変えて送ってみたところ、普通に届きました。

全部大文字だけじゃなく、 仮に

abcdefg@gmail.com

というアドレスだったとして、それを

AbcDeFg@gMail.cOm

に変えてメールを送信しても届きました。@以降も大文字小文字混在でも行けるんですねぇ・・・

とは言え、稀に、一般的でな運用をしているサーバーもあるかもしれないので、人のメールアドレスは教わったとおり、大文字小文字も正確に記述したほうが良いということですね。

コメント