如何限制Perl的分割功能?

时间:2010-05-19 17:34:30

标签: perl split

我试过这个:

$string ="Group: ALL:ALL:Good";

@str2  = split (/:/,':',2);

print "@str2";

我正在查看$str[0] = Group$str[1]= ALL:ALL:Good

它不起作用。会有什么问题?

3 个答案:

答案 0 :(得分:11)

你的意思不是吗?

@str2  = split (/:/,$string,2);

否则,你将分割字符串:,这似乎毫无意义。

答案 1 :(得分:3)

my $string = "Group: ALL:ALL:Good";
my @str    = split(/:/, $string, 2);

print $str[0];
print $str[1];

答案 2 :(得分:2)

使用分割限制

@array = split /PATTERN/,EXPR,LIMIT;

来自PerlDoc split function

  

如果指定LIMIT且为正,则为   代表最大数量   字段EXPR将被拆分为,   虽然实际的字段数   返回取决于数量   时间PATTERN匹配EXPR。如果   LIMIT未指定或为零,尾随   空字段被剥离(哪个   流行的潜在用户会做得很好   要记住)。如果LIMIT为负数,则为   被视为任意大   LIMIT已被指定。注意   拆分评估为的EXPR   空字符串总是返回   空列表,无论LIMIT如何   指定。