admin 管理员组

文章数量: 887021

Perl

chomp; 具体意义可自行网上搜索,这里只记录开发过程中遇到的坑。

使用chomp;之后,最后一列若是空值,则长度为减1。

#cat -A test.csv 
1^Ia^Ib^Ic^I8$
ui^Ifaf^Iio^I^Ij$
90^Ifaf^Ifaf^I$

执行cat -A test.csv后如上所示,^I表示"\t",$表示换行"\n"。

1. with chomp;

#!/usr/bin/perlopen(DATA, "<test.csv") or die "无法打开数据";while(<DATA>) {chomp;@lineArray = split("\t", $_);$lineArray = @lineArray;print("--$lineArray--\n");
}

运行结果:

--5--
--5--
--3--

 2. without chomp;

#!/usr/bin/perlopen(DATA, "<test.csv") or die "无法打开数据";while(<DATA>) {@lineArray = split("\t", $_);$lineArray = @lineArray;print("--$lineArray--\n");
}

 运行结果:

--5--
--5--
--4--

最后一行隔开之后,最后一个值为空。因此,chomp自动将其删除,导致长度减1.

本文标签: Perl