#!/usr/bin/perl use strict; local $/ = "\n\n"; while( ) { my ($line) = $_ =~ /\b(start\s.*\n?.*end)\b/; $line =~ s/\n/ /g if ( $line ); print "$line\n" if ( $line ); } __DATA__ asdasd start asdasd asdasdasd asdasdas end asdasdas adasdas start as asdas dasdasdad asdasddas end qweqwe asdasd start asdsadsdasddasds sdasdas asdasdasdasd asdasdsa asdasd asdasdasd end ds start asda end