我是Perl Programming的新手。 我有一个包含N个字段的CSV文件,其中第N个字段具有所有记录的尾随空格。我想删除所有这些Trailing Spaces.Please帮助我。
我在循环中使用了这个替换。但它给了我空文件
s/\s+$//
示例文件
123,ABCD,"AC,BD",21/12/2013
134,CDEF,"CD,BD,ED",23/11/2013
987,TGYH,"HY,-.FDDS",20/11/2013
输出
123,ABCD,"AC,BD",21/12/2013
134,CDEF,"CD,BD,ED",23/11/2013
987,TGYH,"HY,-.FDDS",20/11/2013
如果您需要更多详细信息,请与我们联系。 在此先感谢。
答案 0 :(得分:2)
你的正则表达式似乎很好。你可以说:
perl -ple 's/\s+$//' filename
要将更改保存到文件中,请说:
perl -i -ple 's/\s+$//' filename
答案 1 :(得分:0)
删除csv文件中的前导和尾随空格的步骤:
打开输入文件
OPEN FILE, "<$input_file";
循环文件中的每一行以对csv文件中的每一行进行修剪。在while循环中使用正则表达式修剪每个字段的空格的前导和尾随
while(my $row = <FILE>)
{
$row =~ 's/\s//g';
}
这将为您提供您期望的结果