Calocybe: chop und chomp

Beitrag lesen

Moin!

Sag mal wofür ist das chop;?

Schneidet das letzte Zeichen vom eingelesenen String ab, in der Annahme, dass dies ein Linefeed (\n) ist.
Diese Annahme wird jedoch nicht ueberprueft, es fliegt also immer das letzte Zeichen raus. Deshalb gibt es
auch chomp(), welches prueft, was am Ende eines Strings steht, und nur wenn dies mit dem derzeit
gesetzten input record separator (Variable $/, normalerweise ist das "\n") uebereinstimmt, wird abgeschnitten.
$/ kann uebrigens mehrere Zeichen lang sein. Sinn macht das ganze vor allem, weil man niemals sicher
sein kann, dass die letzte Zeile einer Textdatei auch wirklich mit einem Linefeed abgeschlossen ist.
Aber eigentlich steht das auch alles in perlfunc bei chop und chomp.

Calocybe

P.S. Der split-Aufruf ist uebrigens sinnlos. Es wird ohnehin immer nur eine Zeile nach $_ eingelesen und
diese dann in der Schleife verarbeitet.