Perl Language
Steueranweisungen
Suche…
Conditionals
Perl unterstützt viele Arten von bedingten Anweisungen (Anweisungen, die auf booleschen Ergebnissen basieren). Die häufigsten Bedingungsanweisungen sind if-else (sofern nicht) und ternäre Anweisungen. given
Anweisungen werden als switchartiges Konstrukt aus C-abgeleiteten Sprachen eingeführt und sind in den Versionen Perl 5.10 und höher verfügbar.
If-Else-Anweisungen
Die grundlegende Struktur einer if-Anweisung sieht folgendermaßen aus:
if (EXPR) BLOCK
if (EXPR) BLOCK else BLOCK
if (EXPR) BLOCK elsif (EXPR) BLOCK ...
if (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK
Bei einfachen if-Anweisungen kann das if dem auszuführenden Code vorangehen oder folgen.
$number = 7;
if ($number > 4) { print "$number is greater than four!"; }
# Can also be written this way
print "$number is greater than four!" if $number > 4;
Schleifen
Perl unterstützt viele Arten von Schleifenkonstrukten: for / foreach, while / do-while und bis.
@numbers = 1..42;
for (my $i=0; $i <= $#numbers; $i++) {
print "$numbers[$i]\n";
}
#Can also be written as
foreach my $num (@numbers) {
print "$num\n";
}
Die while-Schleife wertet die Bedingung aus, bevor der zugehörige Block ausgeführt wird. So wird der Block manchmal nie ausgeführt. Der folgende Code wird beispielsweise niemals ausgeführt, wenn das Dateihandle $fh
das Dateihandle für eine leere Datei ist oder wenn es bereits vor der Bedingung erschöpft ist.
while (my $line = readline $fh) {
say $line;
}
Die do
/ while
und do
/ until
Schleifen hingegen bewerten die Bedingung nach jeder Ausführung des Blocks. So wird ein do
/ while
oder eine do
/ until
Schleife immer mindestens einmal ausgeführt.
my $greeting_count = 0;
do {
say "Hello";
$greeting_count++;
} until ( $greeting_count > 1)
# Hello
# Hello