#!/usr/bin/perl -w use strict; my $block; while () { if (!/^\n/) { $block .= $_; }else{ process($block); undef($block); } } process($block) if ($block); sub process { my $info = shift; print "\n",$info if ($info); } __DATA__ USER 1 LOGIN date MORE info MORE info USER 2 LOGIN date MORE info MORE info