Просто last
будет работать здесь:
for my $entry (@array){
if ($string eq "text"){
last;
}
}
Если у вас есть вложенные циклы, то last
выйдет из самого внутреннего. Используйте метки в этом случае:
LBL_SCORE: {
for my $entry1 ( @array1 ){
for my $entry2 ( @array2 ){
if ( $entry1 eq $entry2 ){ # or any condition
last LBL_SCORE;
}
}
}
}
Учитывая оператор last
, компилятор выйдет из обоих циклов. То же самое можно сделать в любом количестве циклов, а метки можно фиксировать в любом месте.