Perl中chomp和chop的区别介绍
一、chomp是用来删除换行符。
#!/usr/bin/perl
$c = "abcde\n";
chomp($c);
print("$c");
[root@login1]# perl perl_try.pl
abcde[root@login1]#
二、chop是用来删除最后一个字符。
#!/usr/bin/perl
$c = "abcde\\";
chop($c);
print("$c\n");
[root@login1]# perl perl_try.pl
abcd
三、chomp与chop的用法
1.chomp的用法:
它对变量起作用,而此变量含有字符串。如果字符串结尾有换行符,chomp 可以去掉它。这基本上就是它能完成的所有功能,如下例:
$text="alineoftext\n "; #也可以由<STDIN>输入
chomp($text);
#去掉换行符(\n)。
它非常有用,基本上你的每一个程序都会用到它。如你将知道,这是将字符串末尾换行符去掉的最好方法。基于 Perl 中的一条基本原则:在需要使用变量的地方,可以使用赋值表达式来代替。我们有更简单的使用 chomp 的方法。Perl 首先做赋
值运算,再使用这个变量。因此使用 chomp 的最常用方法是:
chomp($text = <STDIN>); #读入,但不含换行符
$text = <STDIN>;
chomp($text);
#同上,但用两步完成
第一眼见到时,第一种组合的方法看起来复杂些。如果把上述其看成两步操作,读一行再 chomp,那写成两个语句的方法 看起来自然些。如果将其看作一个操作,读入一行但不包括换行符,那写成一个语句的方法更恰当。由于绝大多数 Perl 程
序员使用第一种写法,你也应该使用它。
2.chop与chomp的区别:
- chop()函数,只是去除最后一个字符。
- chomp()函数,就要首先判断最后一个字符是不是为"\n",他才去除。