perl Text::CSV_XS删除所有转义字符

perl Text::CSV_XS删除所有转义字符,perl,csv,xs,Perl,Csv,Xs,由于换行符内部数据的问题,我已经从Text::CSV迁移到XS版本 Text::CSV_XS删除数据中的所有转义字符 (我正在使用linux和perl 5.8.8) 这是示例代码(如下所示) 我希望在转义1之后,第3行上的属性应该是\N,但是Text::CSV_XS会同时删除这两个属性\ use strict; use warnings; use Text::CSV_XS; my $csv = Text::CSV_XS->new({ binary => 1, eo

由于换行符内部数据的问题,我已经从Text::CSV迁移到XS版本

Text::CSV_XS删除数据中的所有转义字符 (我正在使用linux和perl 5.8.8) 这是示例代码(如下所示)

我希望在转义1之后,第3行上的属性应该是\N,但是Text::CSV_XS会同时删除这两个属性\

use strict;
use warnings;
use Text::CSV_XS;

my $csv = Text::CSV_XS->new({
    binary => 1,
    eol => "\n",
    quote_char => '"',
    escape_char => '\\',
    auto_diag => 2,
    allow_loose_escapes => 1,
}) or die "Can't create CSV parser";

while( my $row = $csv->getline(\*DATA) ) {
    print join(" ",@{$row})."\n";
}

__DATA__
ata,atb,atc
1a,"1b                                                                                                                                         
1b-continued",1c
\\N,2b,2c
这是输出

ata atb atc
1a 1b
1b-continued 1c
N 2b 2c

使用
allow\u unquoted\u escape=>1
(从0.95版开始提供)。

只有在设置
escape\u char=>“\\”时,它才会删除反斜杠。
。我想知道你是否误解了这个选项的作用。我认为这个参数没有在XS模块中实现。我得到了这个错误`` CSV_XS错误:1000-INI-未知属性'allow_unquoted_escape'@pos 0无法在parse1第6行创建CSV解析器。你必须有一个旧版本