#! /usr/bin/perl use strict; use warnings; use List::Util qw( sum ); my @values; while ( my $line = ) { if ( $line =~ m{^start$} ... $line =~ m{^end$} ) { if ( $line !~ m{^(?:start|end)$} ) { push @values, $line; } elsif ( $line =~ m{^end$} ) { # einfacher Mittelwert my $average = sum(@values)/@values; print $average, "\n"; # reset for next dataset @values = (); } } } __DATA__ start 0.23 0.32434 0.234 1.0 end start 0.3423 1.4 end final