从字符串数组中连接选定的值

时间:2016-04-09 13:36:39

标签: perl

我有这个数组: my @List = ( "AB,CD,EF", "GH,IJ", "KL,MN,OP,UV", "WX", "YZ,123,456,789", ); 并通过从用户获取数字列表 for example: 0 3 4 我想通过连接我的List中的相关字符串来创建一个新字符串。 对于上面的示例,新字符串将是: "AB,CD,EF,WX,YZ,123,456,789"

对此有何帮助?

1 个答案:

答案 0 :(得分:2)

您需要join以及@list数组的切片。全局正则表达式匹配将用于从输入字符串中提取所有数字

use strict;
use warnings 'all';
use feature 'say';

my @list = qw/
    AB,CD,EF
    GH,IJ
    KL,MN,OP,UV
    WX
    YZ,123,456,789
/;

my $input = '0 3 4';
my @input = $input =~ /\d+/g;

my $result = join ',', @list[@input];

say $result;

输出

AB,CD,EF,WX,YZ,123,456,789