连接两个相同索引数组的元素

时间:2015-06-04 11:54:35

标签: perl concatenation

我在连接两个数组的索引元素时遇到了问题。

示例:

 @x=(1,2,3,4);
 @y=(5,6,7,8);

我想要连接

$x[0]"_"$y[0]

像这样:

if @i=(..n), then $x[$i]"_"$y[$i]

建议可能的解决方案。

3 个答案:

答案 0 :(得分:2)

要重复数组中n个元素的处理,您可以执行以下操作

my @x=(1,2,3,4);
my @y=(5,6,7,8);

my @concatenated_array=();
for my $i (0 .. $n)      # define $n <= min($#x,$#y)
{
  push @concatenated_array, $x[$i] ."_". $y[$i]; 
}
print "@concatenated_array\n"; 

答案 1 :(得分:0)

在Perl中,您可以连接这样的元素:

my @x=(1,2,3,4);
my @y=(5,6,7,8);

my $z = $x[0] . $y[0];

如果你想在两个元素之间使用下划线符号,你可以这样使用:

my $z = $x[0] ."_". $y[0];

答案 2 :(得分:0)

在perl连接中使用.完成所以如果要连接两个元素,请使用

my $z = $x[0] . $y[0]

如果要将多个元素相互连接起来,最好是循环执行此操作,并继续将$z与元素$x[0] or $y[0]连接起来并将其分配回$z

my $z = $z . $x[0]
$z = $z . $y[0]

我不知道你将要连接的确切条件,所以我会给你一个确切的答案,但如果你使用上面的逻辑循环,我希望你的问题能够得到解决。