はてなユーザーIDの仕様についての備忘録

Greasemonkeyなどで調べることがあったので、まとめておきます。

サブアカウントのユーザー名は、アルファベットで始まり、アルファベットか数字で終わる3文字以上、32文字以内の半角英数字で入力してください。

サブアカウントについて - はてな

一言で説明すると、この通り。主語がサブアカウントになっていますが、メインアカウントでも同じです。ただアルファベットと数時以外でも「-」(ハイフン)「_」(アンダーバー)が使えますが。
これを正規表現で書くと

[a-zA-Z][\w-_]{1,30}[a-zA-Z0-9]

こうなりますね。

追記

b:id:Cherenkovさんから指摘をいただきました、ありがとうございます。

[a-zA-Z][\w-]{1,30}[a-zA-Z\d]

なるほどー。

もうちょっとまとめると

使える文字は

abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789-_

の64文字。いずれも半角。

3文字以上、32文字以内

これはそのまま

アルファベットの大文字と小文字は区別される

は別のユーザーとして扱われます

始めの1文字はアルファベットのみ

○ sample
× 0sample
× -sample
× _sample

最後の文字は英数字のみ

○ sample
○ sample0123
× sample-
× sample_


という。


仕様じゃないけれど

はてなユーザーIDの特徴としては、それがユーザー名として機能することが多いこと。
私の場合は id:rikuo で ハンドルネームも同じ rikuo なのでちょっと例としては向いてないですが、例えば、はてな社長の近藤淳也さんのことを、id:jkondo と呼んだり、同じくはてな伊藤直也さんを id:naoya などと呼ぶことがよく見られます。他のサービスで言えば mixi や pixiv の場合ユーザーIDは番号なため、あまりそういう傾向にないのですが、はてなでは id:〜と書くとそれでリンクされるなどの慣習からか、ユーザーIDが個人名称として使われるケースが多いです。
もしも、新たにユーザー登録をする場合はそこら辺も気をつけて、呼ばれてもいいような言葉にした方がいいでしょう。