为什么这不起作用?
my $str = 'we,you,them,us';
print $(split($str,','))[0];
Run Code Online (Sandbox Code Playgroud)
我知道我能做到:
my @str = split...
Run Code Online (Sandbox Code Playgroud)
但我记得有一种方法可以跳过它.
谢谢,
你有反向拆分的参数顺序.在parens前面不应该有美元符号.以下工作(加号强制perl评估以下表达式):
use strict;
use warnings;
my $str = 'we,you,them,us';
print +(split(',',$str))[0];
Run Code Online (Sandbox Code Playgroud)
只要您只需要访问函数返回值的一小部分,就应该检查是否可以使用更小的范围函数.在这种情况下,我可能会使用正则表达式:
print $str =~ /^([^,]*)/;
Run Code Online (Sandbox Code Playgroud)