Perl Language
Kontrollmeddelanden
Sök…
villkors
Perl stöder många typer av villkorade uttalanden (uttalanden som är baserade på booleska resultat). De vanligaste villkorade uttalandena är om-annars, om inte, och ternära uttalanden. given
uttalanden introduceras som en switchliknande konstruktion från C-härledda språk och är tillgängliga i versionerna Perl 5.10 och högre.
Om-andra uttalanden
Grundstrukturen för ett if-uttalande är så här:
if (EXPR) BLOCK
if (EXPR) BLOCK else BLOCK
if (EXPR) BLOCK elsif (EXPR) BLOCK ...
if (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK
För enkla if-uttalanden kan if föregå eller lyckas koden som ska köras.
$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;
Loops
Perl stöder många typer av slingkonstruktioner: för / förhand, medan / gör-medan och tills.
@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";
}
Samtidigt slingan utvärderar villkoret innan det tillhörande blocket körs. Så ibland körs blocket aldrig ut. Till exempel kommer följande kod aldrig att köras om filhandtaget $fh
var filhandtaget för en tom fil, eller om det redan var uttömt före villkoret.
while (my $line = readline $fh) {
say $line;
}
do
/ while
och do
/ until
loopar å andra sidan utvärderar villkoren efter varje gång blocket körs. Så en do
/ while
eller en do
/ until
slinga körs alltid minst en gång.
my $greeting_count = 0;
do {
say "Hello";
$greeting_count++;
} until ( $greeting_count > 1)
# Hello
# Hello