以下に示すように、Test.txt ファイルがあります。
some data1 func-name1 SECTION.
data to be extracted
data to be extracted
some data2 func-name2 SECTION.
data to be extracted
data to be extracted
func-name2-EXIT. EXIT.
ここで、フリップフロップ演算子を使用して範囲を抽出しています。ここで、START= SECTION. および END= -EXIT。出口。以下のように:
open FILE1, "<Test.txt"
or die "Cannot open File1.txt!";
open FINAL, ">Final.txt"
or die "Cannot open Finall.txt!";
my $START = 'SECTION.';
my $END = '-EXIT EXIT.';
while (<FILE1>) {
if (/$START/ .. /$END|$START/) {
if ($_ =~ m/$END|$START/) {
$flag = 1;
}
print FINAL $_;
if ($flag == 1) {
print FINAL "\n\n";
$flag = 0;
}
}
}
close FINAL;
close FILE1;
私がやろうとしているのは、SECTION 間の区切り文字として次の 2 行が必要だということです。範囲もあり、Final.txt は次のようになります。
some data1 func-name1 SECTION.
data to be extracted
data to be extracted
some data2 func-name2 SECTION.
data to be extracted
data to be extracted
func-name2-EXIT. EXIT.
これについて私を案内してください。