Arrays 如何合并(连接)数组/矩阵中的两列?

Arrays 如何合并(连接)数组/矩阵中的两列?,arrays,perl,concatenation,multiple-columns,Arrays,Perl,Concatenation,Multiple Columns,这可能是一个相当新的问题,但是 在perl中,我试图读入一个表(读入一个数组)并组合前两列的值。因此,对于具有以下内容的输入文件: 1 7 ABC DEF GHI 2 8 ABC DEF GHI 3 1 ZYX MNO PLQ 17 ABC DEF GHI 2.8 ABC DEF GHI 3.1 ZYX MNO PLQ 我想出去: 17 ABC DEF GHI 28 A

这可能是一个相当新的问题,但是

在perl中,我试图读入一个表(读入一个数组)并组合前两列的值。因此,对于具有以下内容的输入文件:

1 7 ABC DEF GHI 2 8 ABC DEF GHI 3 1 ZYX MNO PLQ 17 ABC DEF GHI 2.8 ABC DEF GHI 3.1 ZYX MNO PLQ 我想出去:

17 ABC DEF GHI 28 ABC DEF GHI 31 ZYX MNO PLQ 17 ABC DEF GHI 28 ABC DEF GHI 31 ZYX MNO PLQ
最简单的方法是什么?

我能想到的最简单的方法

Open file

#read file line by line

while input line
    remove trailing newline
    split line into an array
    make index 1 equal index 0 . 1
    remove first element from array
    print the elements of the array followed by \n #to STDOUT or file

这很短,因此我必须在答案中添加额外的文本:

while(<>){ s/^(\S+)\s+/$1/; print}
while(){s/^(\s+)\s+/$1/;print}

如果您向我们展示您的代码,我们将修复它。这就是使用替换命令删除空间而不使用全局标志的方式。