1

下面的脚本在每个“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";
4

2 回答 2

2

A在连续元素之间join连接它的第一个参数。如果你想添加最后的“E”,你可以简单地做:

$s = 'ABCDEABCDEABCDEABCDEABCDE';
@a = split(/E(?!P)/, $s);
print join ("E ", @a), "E\n"; 
于 2012-10-10T11:30:37.543 回答
0

请参阅以下文档split

默认情况下,保留空的前导字段,并删除空的尾随字段。

于 2012-10-10T11:23:04.893 回答