NAME

chomp - remove a trailing record separator from a string


SYNOPSIS

chomp VARIABLE

chomp LIST

chomp


DESCRIPTION

This is a slightly safer version of chop (see below). It removes any line ending that corresponds to the current value of $/ (also known as $INPUT_RECORD_SEPARATOR in the English module). It returns the total number of characters removed from all its arguments. It's often used to remove the newline from the end of an input record when you're worried that the final record may be missing its newline. When in paragraph mode ($/ = ""), it removes all trailing newlines from the string. If VARIABLE is omitted, it chomps $_. Example:

    while (<>) {
	chomp;	# avoid \n on last field
	@array = split(/:/);
	...
    }

You can actually chomp anything that's an lvalue, including an assignment:

    chomp($cwd = `pwd`);
    chomp($answer = <STDIN>);

If you chomp a list, each element is chomped, and the total number of characters removed is returned.