open (IN, 'input.txt') or die "$!"; my $lines = do {local $/; }; close IN; while ($lines =~ s/Key.+?value=(\d+).+?Screen:add.+?value=(\d+).+?Xml:sendRequest.+?value=(\d+).+?Xml:onResponse.+?value=(\d+).+?Xml:processing.+?value=(\d+)//s){ # then I would use $1 - $5 } #### BLAH BLAH BLAH KEY blah blah blah BlAH BLAH BLAH ABD KEY blah blah asdf asdf asdf asdf BLAH ASDF PATTERN blah blah