为什么我使用Perl的分割功能不分裂?

时间:2010-02-07 07:23:39

标签: html perl split

我正在尝试将HTML文档拆分为头部和正文:

my @contentsArray = split( /<\/head>/is, $fileContents, 1);
if( scalar @contentsArray == 2 ){
    $bodyContents = $dbh->quote(trim($contentsArray[1]));
    $headContents = $dbh->quote(trim($contentsArray[0]) . "</head>"); 
}

是我拥有的。 $fileContents包含HTML代码。当我运行它时,它不会分裂。谁知道为什么?

2 个答案:

答案 0 :(得分:6)

要拆分的第三个参数是要生成的结果数,因此如果只想应用表达式一次,则会传递2。

请注意,这实际上限制了模式用于拆分字符串的次数(比传递的数量少一个),而不仅仅限制返回的结果数量,因此:

print join ":", split /,/, "a,b,c", 2;

输出:

a:b,c

a:b

答案 1 :(得分:1)

对不起,想通了。认为1是多少次它会发现表达不限制结果。改为2并且有效。