正規表現について質問です
以下のソースを実行しているのですが…

#========
my $text = "10a|10b|10c";
$text =~ /(10.)/g;
print $1;
print $2;
print $3;
#========

「"10"で始まり、その次の1文字まで含めた値」を全て取得したいのですが、
出力されるのは何故か$1だけで、$2以下は「Use of uninitialized value」とエラーが出てしまいます
マッチした部分は特殊変数$1、$2、$3…と順次格納されると考えていたのですが…
どの部分がおかしいのでしょうか?