[perl] 问一个正则表达式

[perl] 问一个正则表达式

$line="11|a2|3y |4s |55";

如何把$line中的分割线|分开的部分分别保存到变量中?
$line =~ /([^|]+)/g

split也可以吧。
多谢楼上教我一个知识点

my $line="11|a2|3y |4s |55";


if ($line =~ /(.+)\|(.+)\|(.+)\|(.+)\|(.+)/) {
        print "$1 -- $2  --  $3 -- $4 -- $5 \n";
}

while ($line =~ /([^|]+)/g) {
        print "$1 \n";
}

运行结果:
11 -- a2  --  3y  -- 4s  -- 55
11
a2
3y  
4s  
55