Login
Login-Name Passwort


 
Newsletter
Werbung

Do, 17. Juni 1999, 00:00

Perl/CGI-Workshop, Teil 7

Kontrollstrukturen (2)

Die "for"-Schleife ist in Perl genauso aufgebaut wie in C/C++:

<em>#!/usr/bin/perl</em>
<em># forloop.pl -- by W. Jährling</em>
for ($versuche = 1; $versuche <= 3; $versuche++) {
 print "Enter your Login Name: ";
 $login = <STDIN>;
 print "Enter your Password: ";
 $passwd = <STDIN>;
 chomp $login; chomp $password;
 if (($login eq 'root') && ($password eq 'tmt1w2di')) {
 $correct = 1;
 last; <em># Schleife verlassen</em>
 }
 print "Login incorrect!\n";
}
die "3 trys and you are OUT!\n" if not $correct;
<em># ...</em>

Die drei Teile des Schleifenkopfes sind also auch in Perl:

  1. Initialisierungs-Anweisung (wird einmal ausgeführt, bevor die Schleife betreten wird)
  2. Bedingung (entsprechend der while-Schleife)
  3. Iterations-Anweisung (wird nach jedem Schleifendurchlauf ausgeführt)

Zusätzlich gibt es in Perl auch noch die aus "awk" bekannte foreach-Schleife. Diese ermöglicht es, komfortabel ein Array durchzuarbeiten.

<em>#!/usr/bin/perl</em>
<em># foreach.pl -- by W. Jährling</em>
@dokument = ("Erste Zeile", 3.14 "Dritte Zeile", 10 .. 13);
foreach $zeile (@dokument) {
 $cnt++;
 print "Zeile $cnt ist: $zeile\n";
}
<em># Eine andere Anwendung von "foreach" ist das da:</em>
foreach $cnt (1 .. 100) {
 print "Have a lot of fun!\n"; <em># Gibt 100 mal den Text aus</em>
}

Beachten Sie dabei bitte, dass die Variable, mit der das Array durchgearbeitet wird, vor der Klammer stehen muss. In der Klammer steht lediglich das Array.

Im nächsten Kapitel werden wir uns mal ansehen, wie man reguläre Ausdrücke (regular expressions oder einfach "regexp"s) in Perl verwendet. Falls Sie noch nie mit Regexps zu tun hatten, brauchen Sie natürlich keine Angst zu haben: Es wird nicht vorausgesetzt, dass Sie sich damit auskennen.


[<< Zurück] [Weiter >>]
Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung