#!/usr/bin/perl use warnings; use strict; while () { if (my $flip = /^start/ ... /^[^+]/) { print unless $flip =~ /E/; } } __DATA__ start text + 123 + 456 + 789 some other text not starting with +