Я хотел бы напечатать конкретные данные после сопоставления рисунка или строки. У меня есть файл, как это:Perl: Как напечатать следующую строку после сопоставления рисунка?
#******************************
List : car
Design: S
Date: Sun 10:10
#******************************
b-black
g-green
r-red
Car Type No. color
#-------------------------------------------
N17 bg099 g
#-------------------------------------------
Total 1 car
#******************************
List : car
Design: L
Date: Sun 10:20
#******************************
b-black
g-green
r-red
Car Type No. color
#-------------------------------------------
A57 ft2233 b
#-------------------------------------------
Total 1 car
#******************************
List : car
Design: M
Date: Sun 12:10
#******************************
b-black
g-green
r-red
Car Type No. color
#-------------------------------------------
L45 nh669 g
#-------------------------------------------
Total 1 car
#. .
#. .
#.
#.
Я хочу, чтобы напечатать данные, например, после того, как линии «типа ....» и черточки линии «------», которая является N17 и bg099. Я пробовал это, но он не может работать.
my @array;
While (@array = <FILE>) {
foreach my $line (@array) {
if ($line =~ m/(Car)((.*))/) {
my $a = $array[$i+2];
push (@array, $a);
}
if ($array[$i+2] =~ m/(.*)\s+(.*)\s+(.*)/) {
my $car_type = "$1";
print "$car_type\n";
}
}
}
Ожидаемый результат:
Car Type No.
N17 bg099
A57 ft2233
L45 nh669
.. ..
. .
Ваш вопрос делает матч с description.You сказать печать рядом два lines.and внутри вопрос должен напечатать только одну строку после сопоставляя две строки. – Vijay