Re: [問題] 文字元素的合成

作者: AntaresStar   2019-04-27 14:58:28
重新想了一下 再有bug就不寫了 XDD
my $str = 'A, B, C[1], C[0], D, P[3], P[2], P[1],';
my @arr = split /, */, $str;
my @out;
my @bus = ' ';
sub bus_out {
return if $bus[0] eq ' ';
push @out, ($#bus ? "[$bus[1]:$bus[2]] " : '').$bus[0];
}
for (@arr) {
my @curr = /(\w+)\[(\d+)\]/ ? ($1, $2, $2) : $_;
if ($curr[0] ne $bus[0]) {
bus_out;
@bus = @curr;
} else {
$bus[2] = $2;
}
}
bus_out;
print "$_;\n" for (@out);

Links booklink

Contact Us: admin [ a t ] ucptt.com