#!/usr/bin/perl use strict; use warnings; my %database = ( 'TEST' => [ "Testdorf", 12345, "Testweg 99" ], 'test' => [ "Teststadt", 54321, "Teststrasse 9" ], ); sub Eingabe_Holen { my $eingabe = ; chomp($eingabe); return if length($eingabe) == 0; return $eingabe; } sub say { print @_,"\n"; } while (1) { say " (1) Abfrage (2) Erfassung (X) Ende"; print "Auswahl: "; my $eingabe = Eingabe_Holen(); last if length($eingabe) == 0 or uc($eingabe) eq 'X'; Abfrage() if $eingabe =~ /^1/; Erfassung() if $eingabe =~ /^2/; } sub Abfrage { print "Namen eingeben (* um alle abzufragen): "; my $wert = Eingabe_Holen(); say "Datensatz wird gesucht...", "\n"; if ($wert eq "*") { do { say "------", join "\n", "", @{$database{$_}}, "------"; } for keys %database; } elsif (exists $database{$wert}) { say "Datensatz: ", join "\n",@{$database{$wert}}; } else { say "Datensatz nicht gefunden!" } } sub Erfassung {}