Sahanya

Sonntag, 11. 04. 2004

chop und chomp

Filed under: — Sahanya @ 14:04

Der Befehl chop entfernt das letzt Zeichen einer Skalarvariabel:

$a = "Sahanya";
chop ($a);
# Sahany (letzter Buchstabe fehlt)
chop ($a); #Sahan (“)

Während der Befehl chomp sich nur auf den Newline-Befehl \n bezieht.

Eine Eingabeaufforderung mit <STDIN> wird in der Regel mit chomp beendet, um sicherzustellen, dass das Newline-Zeichen entfernt wird:

$eingabe = <STDIN>;
chomp $eingabe;

Das ganze geht aber auch kürzer:

chomp ($eingabe = <STDIN>);

Manchmal sollte bzw. muss man allerdings nach einer Eingabeaufforderung auch auf den chomp-Befehl verzichten, z. B. wenn man möchte, dass ein Wert in getrennten Zeilen untereinander ausgegeben wird.

Wenn $wort = "hallo" und $anzahl = 4 ergibt der folgende Code: hallohallohallohallo

print "Wie lautet das Wort?\n";
chomp ($wort = <STDIN>);
print "Wie oft soll es wiederholt werden?\n";
# \n bewirkt, dass Anwort in neuer Zeile gegeben wird
chomp ($anzahl = <STDIN>);
$c = $wort x $anzahl;
#print "So sieht das aus \n$c";
# \n bewirkt, dass erstes Wort nach Leerzeile startet

Wenn $wort = "hallo" und $anzahl = 4 ergibt der folgende Code:
hallo
hallo
hallo
hallo

print "Wie lautet das Wort?\n";
$wort = <STDIN>;
#fehlendes chomp bewirkt, dass Antwort in mehreren Zeilen ist, weil newline bleibt
print "Wie oft soll es wiederholt werden?\n"; # \n bewirkt, dass Anwort in neuer Zeile gegeben wird
chomp ($anzahl = <STDIN>);
$c = $wort x $anzahl;
print "\n$c";
# \n bewirkt, dass erstes Wort nach einer Lerzeile startet

Andere Perl-Themen

Keine Kommentare

Noch keine Kommentare

RSS Feed für Kommentare zu diesem Artikel.

Entschuldige, das Kommentarformular ist zurzeit geschlossen.

 

Powered by WordPress | Angepasst von: www.vlad-design.de