4-10桁目... ([^/]+)⇒どういう意味?また行頭を評価しようとしている??
「[^(文字リスト)]」という正規表現での「^」は、行頭という意味ではなく「(文字リスト)に含まれないもの」です。つまり「/」でない文字の1回以上の繰り返しという意味です。
その他の部分の解釈は合っていると思います。
$ echo '/~username' | perl -ne 'if ( m#^/~([^/]+)/?(.*)# ) { print "($1),($2)\n" }'
(username
),()
$ echo '/~username/' | perl -ne 'if ( m#^/~([^/]+)/?(.*)# ) { print "($1),($2)\n" }'
(username),()
$ echo '/~username/hoge' | perl -ne 'if ( m#^/~([^/]+)/?(.*)# ) { print "($1),($2)\n" }'
(username),(hoge)
$ echo '/~username/hoge/hoge' | perl -ne 'if ( m#^/~([^/]+)/?(.*)# ) { print "($1),($2)\n" }'
(username),(hoge/hoge)