use strict; use warnings; use v5.10; use List::Util qw(shuffle); my @blocks = do { local $/ = "Seite:\n"; map {chomp;$_} }; my @shuffled = shuffle(@blocks); foreach (@shuffled) { print $_; } __DATA__ Seite: Zeile Seite: Token1: Seite: Token2: Seite: Text1 Seite: Text2