INPUT.TXTは、Perl
CASE
REPEAT 1 TIMES
ENDREPEAT
ENDCASE
REPEAT
ENDREPEAT
CASE
REPEAT 2 TIMES
ENDREPEAT
ENDCASE
code.plに
open (FH, "input.txt");
my @arr = <FH>;
foreach (@arr) {
if ($_ =~ s/ENDCASE.*?CASE//gsi) {
$_ = s/ENDCASE.*?CASE//gsi;
}
}
print @arr;
出力を使用してファイルから要素を削除します。perl code.pl
それは修正せずに配列を出力します..... ...
CASE
REPEAT 1 TIMES
ENDREPEAT
ENDCASE
REPEAT ===> To be Removed
ENDREPEAT ===> To be Removed
CASE
REPEAT 2 TIMES
ENDREPEAT
ENDCASE
出力が必要な場合は、* ** ||||||||| ** * *
CASE
REPEAT 1 TIMES
ENDREPEAT
ENDCASE
************Content Removed*****************
CASE
REPEAT 2 TIMES
ENDREPEAT
ENDCASE
この出力を得るために私をガイドしてください。事前に
おかげで.........
少なくとも、データ/コードとは何かを明確にするように質問してください。 –
「CASE/ENDCASEの間に削除されたもの」または「REPEAT/ENDREPEATがCASE/ENDCASEに組み込まれていない限り削除される」かどうかを指定する必要があります。この例では、出力は同じです。より一般的なケースでは、そうではありません。また、 'REPEAT n TIMES/REPEAT m TIMES/ENDREPEAT/ENDREPEAT'で何が起こるべきかを指定する必要があります。そして、その言語がこれらのキーワードを最初の非空文字列として必要とすると仮定するのは安全でしょうか?あるいはレイアウトフリーフォームですか? –