2017-08-18 11 views
-1

を扱う開いているファイル内のサブセクションをお読みください。 今、whileループの中でそのサブセクションの終わりを見るまで、ファイルのサブセクションを読みたいと思います。 すなわち:ラインで「EndSection」行まで「StartSection」から読み:Perlは、私が使用してファイルを開く必要があり

open (FH, "<".$File::Find::name) or die "cannot open file 
\"".$File::Find::name." \"!"; 
while (<FH>) { 
    ...my code... 
    if (/^StartSection$/) { 
    while (<FH> !~ /^EndSection) { 
     ... more code.... 
    } 
    } 
} 

がどのように私はPerlでこれを正しくプログラムする必要がありますか?

+0

言葉は「Perlの」と「ファイルハンドル」ではなく、「PERL」と「FileHandlerのです" – ikegami

+0

'$ fh、 '<'、$ filename ...' – zdim

答えて

2

私はこの質問に答えるには、いくつかの方法を考えることができますが、私はflip-flop operator答えを行くよ:

while (<FH>) { 
    if (/^StartSection$/ .. /^EndSection/) { 
     ... special code ... 
    } else { 
     ... regular code ... 
    } 
} 
+0

を開いて、ifセクションの中で次の行(S)をにどのように読み込むのですか? –

+0

こんにちはありがとうございます。これはうまく動作します! –

関連する問題