1.操作perl 数组的pop,push,shift,unshift区别
pop:删除并返回数组的最后一个元素。
my @names = ('Foo', 'Bar', 'Baz'); my $last_one = pop @names; print "$last_one\n"; # Baz print "@names\n"; # Foo Bar
若数组为空,返回undef.
push:在数组的后面添加一个或多个值.
my @names = ('Foo', 'Bar'); push @names, 'Moo'; print "@names\n"; # Foo Bar Moo my @others = ('Darth', 'Vader'); push @names, @others; print "@names\n"; # Foo Bar Moo Darth Vader
shift:使整个数组向左移动,那么第一个元素就会从数组上“掉下来”,成为函数的返回值,这样操作以后,数组会减少一个值。
my @names = ('Foo', 'Bar', 'Moo'); my $first = shift @names; print "$first\n"; # Foo print "@names\n"; # Bar Moo
unshift:shift的反函数。会传入一个或多个值(或者0个值)并把它放在数组的开头,将其他元素向右移动,可以传单个的标量,那么这个值会成为数组的第一个元素,也可以传递第二个数组,那么第二个数组的所有元素会复制到主数组的开头,并将其他元素向高索引方向移动。
my @names = ('Foo', 'Bar'); unshift @names, 'Moo'; print "@names\n"; # Moo Foo Bar my @others = ('Darth', 'Vader'); unshift @names, @others; print "@names\n"; # Darth Vader Moo Foo Bar
2.$_=~s/A/B/g 将内容A全部替换成B