#!/usr/bin/perl # # lambda-style! # use strict; use warnings; use Data::Dumper; my @substitutes; for () { chomp; my ($k, $v) = split(/ -- /); push @substitutes, sub {s/^$k/$v/;}; } while(<>) { for my $repl (@substitutes) { $_ =~ $repl } print; } _ _DATA_ _ uidf2920 -- Bla BlaBla uid60124 -- Maier uidg1626 -- Muster uidg1067 -- Mueller