空行を区切り文字として読み込む
普通にファイルを読み込むと一行ずつの読み込みになりますが、特殊変数$/に空文字を設定することで、空行を区切りにデータを読み込むことができます。
そのまま$/を変更するとプログラム全体に影響を及ぼすのでlocalで影響範囲を限定した方が良いです。
ここからプログラム { local $/ = ''; while (my $line = <DATA>) { chomp $line; print "=== BEGIN\n"; print $line, "\n"; print "===== END\n\n"; } } __END__ aaa bbb ccc ddd 以下、実行結果 === BEGIN aaa bbb ===== END === BEGIN ccc ===== END === BEGIN ddd ===== END