Bedingungen


Natürlich kennt Perl auch if/then/else-Anweisungen. Sie sehen wie folgt aus:

if ($a) {
	print "The string is not empty\n";
} else {
	print "The string is empty\n";
}

Erinnern wir uns, das ein String als false betrachtet wird, falls er leer ist, sowie wenn $a gleich 0 ist.

Es gibt aber noch mehr Möglichkeiten:

if (!$a) {			# Das ! ist der NOT Operator
	print "The string is empty\n";
} elsif (length($a) == 1) {		# falls obiges false
	print "The string has one character\n";
} elsif (length($a) == 2) {		# falls obiges false
	print "The string has two characters\n";
} else {				# andernfalls
	print "The string has lots of characters\n";
}

Beachte: bei elsif muss tatsächlich das 'e' fehlen.


Uebung

Wir nehmen ein ziemlich langes File, welches Text und Leerzeilen enthält. Zum Beispiel gibt es folgende Geschichte aus dem Tages-Anzeiger. Von der letzten Uebung haben wir ein Programm, welches das Passwort-File mit Zeilennummerierung ausgibt. Aendere dieses Programm, sodass die Zeilennummern bei Leerzeilen nicht mitgerechnet und ausgegeben werden, jedoch die Zeile selber immer ausgegeben wird. Beachte, dass beim Einlesen eines Files, jede Zeile am Ende den newline-Character enthält.


Previous Start Next


last update: 17.11.2000, Roland Dietlicher , Informatikdienste ETH Zürich