Perl 内置函数与脚本编写技巧深度解析
1. Perl 函数参数括号的使用
在 Perl 中,通常可以省略函数参数列表周围的括号,因为 Perl 足够智能,能理解你的意图并正确执行。然而,在某些情况下,Perl 无法准确判断你的需求,此时就需要正确使用括号来避免问题。
1.1 控制参数贪婪函数
考虑以下语句:
print sort @F, "\n";
由于函数在获取参数时具有贪婪性,且右边的函数优先获取参数,所以换行符 "\n" 不会按预期作为 print 的最后一个参数,而是会被当作 sort 的最后一个参数。以下示例展示了这个问题:
$,=' '; # 用空格分隔值; -l 选项未生效
print "Start:\n";
print sort @F, "\n";
print "End:\n";
输出结果可能是:
Start
A B CEnd
中间 print 语句中的换行符在排序时排在首位,与 “Start:” 字符串末尾的换行符组合产生了双倍间距的效果。“A” 会有缩进,因为根据 “$,” 设置,在它和 sort 放在它前面的换行符之间自动插入了一个空格。
解决办法是使
超级会员免费看
订阅专栏 解锁全文
833

被折叠的 条评论
为什么被折叠?



