Я использую цикл while для назначения действительных чисел из входного файла в массив. Входной файл настроен таким образом, чтобы первые 21 балл в массиве были пустыми. Число 21 соответствует номеру строки, содержащей фразу «диапазон1» в моем входном файле минус 1. Я используюКак найти номер строки определенной фразы в perl?
splice @range_min, 0, $header_lines-1;
удалить эти пустые строки из моего массива.
Я хочу, чтобы $ header_lines был равен номеру строки, содержащей эту фразу, так как я мог бы иметь другие входные файлы с этой фразой в другой строке.
Я уже пытался ставить следующую команду в мое время цикла:
$header_lines = $., last if /Range1/;
, который делает работу, но она полностью очищает мой массив (поражение цели моей программы).
Есть ли лучший способ найти номер строки моей фразы во входном файле, не затрагивая мой цикл while или array?
Это сработало отлично! Спасибо. Я думаю, что ваше объяснение тоже верно. –