下面的脚本打破了每个' E'然后是一个' E'被添加到每个片段。但我没有得到E' E'附在我的最后一个元素,为什么?
use strict;
use warnings;
my $s = 'ABCDEABCDEABCDEABCDEABCDE';
my @a = split /E(?!P)/, $s;
my $result = join "E,", @a;
my @final = split /,/, $result;
print "@final\n";
答案 0 :(得分:2)
join
在连续元素之间加入第一个参数。如果你想添加最后的“E”,你可以简单地做:
$s = 'ABCDEABCDEABCDEABCDEABCDE';
@a = split(/E(?!P)/, $s);
print join ("E ", @a), "E\n";
答案 1 :(得分:0)
请参阅split
的文档:
默认情况下,会保留空的前导字段,并删除空的尾随字段。