我需要将变量发送到数组。我有类似的东西
var = "abc|xyz|123";
我想将上述值放入数组中。
$arr[0]="abc";
$arr[1]="xyz";
$arr[2]="123";
我使用了以下方法,但是在使用这种方式时我没有获得数组大小
$var = "abc|xyz|123";
$var =~ tr/|/\n/; # transforming "|" to new line "\n"
@a = $var;
print $a[0];
完整的转换输出仅发送给变量而不是单个变量。
请帮我解决这个问题。
此致 Sriharsha Kalluru。
答案 0 :(得分:8)
使用split
:
@a = split(/\|/, $var);
答案 1 :(得分:0)
虽然我不太确定你打算做什么,但在我看来,你正试图自己解决一个已经有解决方案的问题?!
这应该可以解决问题:Using the Perl split() function?
my $data = 'Becky Alcorn,25,female,Melbourne';
my @values = split(',', $data);
答案 2 :(得分:0)
您想使用拆分
$var = 'abc|xyz|123';
@a = split '|', $var;
print $a[0];