这是我们的阵列:
my @array = ('?C=N;O=D',
'?C=M;O=A',
'?C=S;O=A',
'?C=D;O=A',
'/lab/blog/wp-content/',
'1-list.txt',
'2014/',
'2015/',
'rbxslider/',
'slideshow-gallery/',
'uigen_2015/'
);
如何删除</lab/blog/wp-content/>
值
shift @list until (shift (@list)=~m/wp-contnet/);
我试过这种方式但没有结果
答案 0 :(得分:2)
另一种方式:
@array = grep /wp-content/../(?!)/, @array;
答案 1 :(得分:1)
关闭。
shift @array until $array[0] =~ /wp-content/;
或者如果可能没有任何东西需要删除,
while ($array[0] !~ /wp-content/) { shift @array; }
您可能希望确保不会永远循环。
while (@array && $array[0] !~ /wp-content/) { shift @array; }
答案 2 :(得分:0)
当您使用正确的阵列名称并更正&#34; wp-content&#34;中的拼写错误时,您已关闭,但这并未包含&#39; wp-content&# 39;看起来好像你想做的那个元素。以下检查移位前的第一个元素,而不是将其移开然后检查它:
TextView theText = (TextView) findViewById(R.id.the_text);
输出:
if (grep /wp-content/, @array){
shift @array until $array[0] =~ /wp-content/;
}
print "$_\n" for @array;
答案 3 :(得分:0)
my $count = 0;
my @keep;
foreach (@array){
$count++ if m|/lab/blog/wp-content/|;
push @keep, $_ if $count > 0;
}
say foreach @keep;
/lab/blog/wp-content/
1-list.txt
2014/
2015/
rbxslider/
slideshow-gallery/
uigen_2015/