perl利用什么语句可以检测并过滤掉带删除线(strikethrough)的文字

用perl写了个脚本处理excel文件将其生成为.scs文件,其中在excel文件里有一些文字被加上删除线,在处理时候不需要被处理,因为权限关系不可以修改excel。
想问有什么方法可以让perl自动过滤掉带删除线的文字。
感谢~!

OK,既然你知道怎么写perl,那么不细说其他。
你应该知道如何获取Font,对吧?而删除线是Font的一种。
{Font}->{Strikethrough} strike through: 0 or 1
如果匹配到等于1,那么Filter追问

俄谢谢你的回答。我无知了。。只知道怎么用perl写excel时候怎么设置font,不知道读excel时候怎么获取font。
还麻烦您指教了。foreach后面应该怎么写呢。
谢谢。

追答

 #!/usr/bin/perl -w

    use strict;

    use Spreadsheet::ParseExcel;


    my $parser = Spreadsheet::ParseExcel->new(

        CellHandler => \&cell_handler,

        NotSetCell  => 1

    );


    my $workbook = $parser->parse('test.xls');


    sub cell_handler {


        my $workbook    = $_[0];

        my $sheet_index = $_[1];

        my $row         = $_[2];

        my $col         = $_[3];

        my $cell        = $_[4];


        # Do something useful with the formatted cell value

        #print $cell->value(), "\n";

                print $cell->get_format()->{Font}->{Strikeout},"\n";

    }


test.xls:

温馨提示:答案为网友推荐,仅供参考
相似回答