#!perl use strict; use warnings; my $para = 'Paragraph2:'; while () { print if (/^ {5}$para:?\s*$/i ... /^ {5}\S/ and /^ {7}/) } __DATA__ Paragraph1: text11 Paragraph2: text21 text22 text23 Paragraph3: text31