我该如何整理这些数据?

时间:2011-07-14 09:20:08

标签: python regex perl sed

http://img32.imageshack.us/img32/6649/workspace1001.png big version

我在csv文件中有这个产品数据,但有些字段是错误的。 看截图。一些图像是这样的: image.jpg的#foobar的

他们需要的时候 image.jpg的

并非所有人都有这个。他们都是.jpg

我可以在Sed或Python / Perl中做些什么来解决这个问题吗?

2 个答案:

答案 0 :(得分:3)

sed -i.bk -e 's/jpg#[^,]*/jpg/g' filename

答案 1 :(得分:0)

所以你要做的就是从S列中删除#...,右边的图像列?

Perl可以巧妙地做到这一点。处理CSV中的cols并仅更新您指定的列。

my $in = IO::File->new( "<old.csv" );
my $out = IO::File->new( ">new.csv" );
my $csv = Text::CSV_XS->new();
while( my $rec = $csv->getline($fh) )
{
    $rec->[18] =~ s/\#.*$//s;
    $csv->print( $row );
}