【发布时间】:2013-06-01 12:29:28
【问题描述】:
我正在尝试将一个字符串拆分为一个数组,拆分发生在空格处。每个文本块都由许多(可变)空格分隔。
这是字符串:
NUM8 host01 1,099,849,993 1,099,849,992 1
我尝试了以下但没有成功。
my @array1 = split / /, $VAR1;
my @array1 = split / +/, $VAR1;
my @array1 = split /\s/, $VAR1;
my @array1 = split /\s+/, $VAR1;
我想结束:
$array1[0] = NUM8
$array1[1] = host01
$array1[2] = 1,099,849,993
$array1[3] = 1,099,849,992
$array1[4] = 1
最好的分割方法是什么?
【问题讨论】:
-
最后一个选项应该可以,所以我猜你可能有一些标签。
-
你从你的尝试中得到了什么输出?您使用的最后一种方法应该有效。
-
@squiguy:
\s匹配标签。问题是如果字符串以分隔符开头,Perl 将返回一个具有零长度前导字段的列表。 -
这是一个激进的想法:阅读文档:perldoc.perl.org/functions/split.html