Perl 如何在使用Text::CSV::Slurp时将空格设置为分隔字符

Perl 如何在使用Text::CSV::Slurp时将空格设置为分隔字符,perl,text,Perl,Text,文本文件如下所示: Interface IP-Address OK? Method Status Protocol FastEthernet0/0 10.35.195.1 YES NVRAM up up FastEthernet0/1 unassigned YES manual up down SSLVPN-VIF0 10.35.195.1 YES unset up up Loopback0 10.35.255.193 YES NVRAM up up Loopback1 10.35.255.19

文本文件如下所示:

Interface IP-Address OK? Method Status Protocol
FastEthernet0/0 10.35.195.1 YES NVRAM up up
FastEthernet0/1 unassigned YES manual up down
SSLVPN-VIF0 10.35.195.1 YES unset up up
Loopback0 10.35.255.193 YES NVRAM up up
Loopback1 10.35.255.196 YES NVRAM up up
Loopback2 10.35.255.201 YES NVRAM up up
Loopback3 10.35.255.211 YES NVRAM up up
分隔符字符是空白,而不是“,”,这是
Slurp
中的默认工具。 如何做到这一点

我尝试了如下所示的sep_char,但失败了

my $data = Text::CSV::Slurp->load(file => 'table.txt',sep_char >= 0x20);

您有语法问题


这应该是
sep\u char
之后的
=>
,而不是
=
。此外,一个简单的
sep_char=>'
就足够了(而不是
0x20
)。

Text::CSV::Slurp使用模块解析文件的行。 您使用的加载方法会将选项传递给,您可能会输入错误:

my $data = Text::CSV::Slurp->load(file => 'table.txt', sep_char => ' ');
重要提示: Text::CSV_XS的设计目的不是检测用于引用和分隔字段的字符。解析是使用预定义的设置完成的