解说 在数组末尾增加一个或多个元素。等价于slice (@array, @array, 0, elements);
函数名 pop
调用语法 element = pop (@arrayvar);
解说 与push作用相反,删去列表最后一个元素,并将其作为返回值,当列表已空,则返回
“未定义值”(即空串)。
函数名 split
调用语法 @list = split (pattern, string, maxlength);
解说 将字符串分割成一组元素的列表。每匹配一次pattern,就开始一个新元素,但patt
ern本身不包含在元素中。maxlength是可选项,当指定它时,达到该长度就不再分割。
函数名 sort
调用语法 @sorted = sort (@list);
解说 按字母次序给列表排序。
函数名 reverse
调用语法 @reversed = reverse (@list);
解说 按字母反序给列表排序。
函数名 map
调用语法 @resultlist = map (expr, @list);
解说 此函数在Perl5中定义,可以把列表中的各个元素作为表达式expr的操作数进行运算
,其本身不改变,结果作为返回值。在表达式expr中,系统变量$_代表各个元素。
例子 1、@list = (100, 200, 300);
@results = map ($_+1, @list);
2、@results = map (&mysub($_), @list);
结果 1、(101, 201, 301)
2、无
函数名 wantarray
调用语法 result = wantarray();
解说 Perl中,一些内置函数的行为根据其处理简单变量还是数组有所不同,如chop。自定
义的子程序也可以定义这样两种行为。当子程序被期望返回列表时,此函数返回值为非零
值(真),否则为零值(假)。
例子
#!/usr/local/bin/perl
@array = &mysub();
$scalar = &mysub();
sub mysub {
if (wantarray()) {
print ("truen");
} else {
print ("falsen");
}
}
结果 $program
true
false
$
六、关联数组函数
函数名 keys
调用语法 @list = keys (%assoc_array);
解说 返回关联数组无序的下标列表。
函数名 values
调用语法 @list = values (%assoc_array);
解说 返回关联数组无序的值列表。
函数名 each
调用语法 @pair = each (%assoc_array);
解说 返回两个元素的列表--键值对(即下标和相应的值),同样无序。当关联数组已空,
则返回空列表。
函数名 delete
调用语法 element = delete (assoc_array_item);
解说 删除关联数组中的元素,并将其值作为返回值。
例子 %array = ("foo", 26, "bar", 17");
$retval = delete ($array{"foo"});
结果 $retval = 26;
函数名 exists
调用语法 result = exists (element);
解说 在Perl5中定义,判断关联数组中是否存在某元素,若存在,返回非零值(真),否则
返回零值(假)。
例子 $result = exists ($myarray{$mykey});









