我想用换行符分割字符串的单词。
我试过了 :
$string = 'One Two Three';
my @array3 = split("\n",$string);
我想要这样的输出:
One
Two
Three
如果不使用 for 循环,这可能吗?
您想使用该split
功能,拆分$string
空间区域(" "
特殊情况)。然后获取生成的列表并join
使用换行符"\n"
。
my $string = 'One Two Three';
my $output = join "\n", split " ", $string;
(在http://ideone.com/Sd0Wp查看执行)
在您的代码中,您将字符串拆分为换行符。自然,这只会返回一个值,因为没有换行符。
您不需要为此任务使用拆分连接。
只需使用正则表达式将所有空格替换为换行符。
$string = 'One Two Three';
$string =~ s/\s/\n/g;
print $string;
试试这个:
$string = 'One Two Three';
my @array3 = split (' ', $string);
print join ("\n", @array3);
这将拆分空格上的字符串并在打印时将它们与换行符连接起来。
您的字符串不包含换行符。可能你需要用空格字符分割它。所以试试这个代码:
$string = 'One Two Three';
my @array3 = split(/\s+/,$string);