#!/usr/bin/perl use strict; use warnings; my $file = 'dutno.txt'; my @entries; { my $measure; local $/ = "\nDUT No\n"; open my $fh, '<', $file or die $!; while( my $entry = <$fh> ){ chomp $entry; my @mms = $entry =~ /Measurement:\s*([\d.]+)/; $measure = $mms[0] unless defined $measure; if( grep{ $_ == $measure }@mms ){ $entry = "DUT No\n". $entry unless $entry =~ /^DUT No/; push @entries, $entry; } } } print $_,"\n" for @entries;