PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : chop() oder chomp()?



Assassina
21.11.2008, 13:02
Hallo Leute,


Oft wird chop() dazu verwendet, den Zeilenvorschub am Ende einer Zeile abzuschneiden; hierfür eignet sich jedoch chomp() besser.

>>> Das hier habe ich in einem Perl-Tutorial gelesen, in dem auch erklärt ist, warum chomp() besser geeignet sein soll. Ich habe bisher keinen Unterschied gemerkt. Vielleicht könnt ihr mir mal sagen, in welchen Fällen ihr was benutzt, damit die theoretische Tutorial-Erklärung etwas "plastischer" wird ;)

Viele Grüße

Assassina

Nachtrag: Ich brauche keine theoretische Erklärung des Unterschieds zwischen chop() und chomp(). Cool wäre ein Beispiel, an dem der Unterschied richtig deutlich wird.

int_main();
21.11.2008, 13:19
http://perl.about.com/od/programmingperl/qt/perl_chomp_chop.htm

DrWhiteLetter
21.11.2008, 14:55
Oder kurz:
Chop() entfernt nicht nur einen Zeilenumbruch, sondern einfach das letzte Zeiten.



perl -e '$_="Test"; chomp(); print $_,"\n";'




perl -e '$_="Test"; chop(); print $_,"\n";'

Assassina
21.11.2008, 21:36
Danke für die Antworten, aber das wusste ich bereits.

Ich nehme immer chop() und da ist bei mir noch nie mehr weggeschnitten worden, als ich wollte. Deshalb ist es für den Zeilenumbruch doch völlig egal. Also warum sagt das Tut, chomp() sei besser? Gibt es denn eine Situation, in der es Probleme gibt, wenn man chop() statt chomp() nimmt? Wenn ja, welche?

Das verstehe ich nämlich immer noch nicht.

EDIT: Ähem... Ich glaube, ich habe den Unterschied bisher nie gemerkt, weil ich IMMER \n benutze, ist sowas wie ein Fetisch ;)