use warnings; use strict; open my $infile_1, '<', 'content.csv' or die "Fehler beim Öffnen der Datei"; open my $infile_2, '<', 'common.csv' or die "Fehler beim Öffnen der Datei"; open my $outfile, '>', 'neu.csv' or die "Fehler beim Öffnen der Datei"; my @datei1 = <$infile_1>; my @datei2 = <$infile_2>; chomp (@datei1, @datei2); my %hash; for my $line_1 (@datei1) { my ($nummer1, $kuerzel1, $gesetz1) = split /;/, $line1; $hash{$kuerzel1} = $gesetz1; } for my $line2 (@datei2) { my ($nummer2, $kuerzel2, $gesetz2) = split /;/, $line2; if (exists($hash{$kuerzel2})){ # in $hash{$kuerzel2} steht $gesetz1 zum kuerzel print $outfile join(';', $kuerzel2, $hash{$kuerzel2}, $gesetz2), "\n"; } }