我是Perl的新手,但根据我读过的文档,看起来Perl中的split函数要求使用正则表达式而不是字符串分隔符作为第一个参数,但我发现使用类似的东西print +(split(' ', $string))[0]仍然是正确拆分字符串.
基于此,我试图使用变量分隔符(例如print +(split($var, $string))[0]where $var = ' ')并发现它不起作用.我究竟做错了什么?
谢谢!
编辑:对不起这个可怕的问题.我正在对带有前导空格的字符串运行此操作,发现split函数不喜欢前导空格.例如:
my $var = ' ';
print +(split($var, ' abc ddddd'))[0]
给出一个空白输出.$ var是否被解释为/$var/split函数内部?
与
print +(split(' ', ' abc ddddd'))[0]
它给出了一个输出 abc
因此,当我阅读文档时,我假设我的变量将被视为文字字符串,而实际上它不是,因此领先的空白没有被删除.