如何使用Perl将字符串拆分为两个部分?

时间:2009-09-11 18:30:12

标签: perl split

我有一个字符串,其中有几个部分由制表符分隔:

 Hello\t2009-08-08\t1\t2009-08-09\t5\t2009-08-11\t15

我只想在第一个标签页上将其拆分,以便“{0}}中的”Hello“结束,而$k结束休息。这不太有效:

$v

我该怎么做?

3 个答案:

答案 0 :(得分:37)

为了实现这一目标,您需要使用第3个参数split(),这将为函数提供要分割的最大字段数(如果为正):

my($first, $rest) = split(/\t/, $string, 2);

答案 1 :(得分:7)

没有。它将为您提供前两项并抛弃其余项目。试试这个:

my ($k, $v) = split(/\t/, $string, 2);

答案 2 :(得分:1)

另一种选择是使用简单的正则表达式。

my($k,$v) = $str =~ /([^\t]+)\t(.+)/;