use strict; use warnings; open my $inFH, q{<}, \ < ) { my $foundPriority = 0; $_ = join q{}, map { unless( m{\bpriority\b} ) { ; } elsif( $foundPriority ++ ) { s{priority}{bandwidth}; } else { ; } $_; } split m{(\s+)}; print; } } close $inFH or die qq{close: <## Class control priority 5 Class voip bandwidth 30 Class video bandwidth 40 Class control priority 10 Class voip bandwidth 25 Class video bandwidth 45