作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我继承了快速连续两次使用格式的 perl 代码。这是一个 MWE。
#!/usr/bin/perl
use FileHandle;
use strict;
use warnings;
sub table {
my ($name, $val);
format_name STDOUT "FMT1";
format_top_name STDOUT "FMT1_TOP";
($name, $val) = ("Item1", 42); write;
($name, $val) = ("Item2", 100); write;
format FMT1_TOP =
Name | Cost
-------------+-------
.
format FMT1 =
@>>>>>>>>>>> | @<<<<
$name, $val
.
}
print "Data 1\n"; table; print "\n";
print "Data 2\n"; table;
Data 1
Name | Cost
-------------+-------
Item1 | 42
Item2 | 100
Data 2
Item1 | 42
Item2 | 100
Data 1
Name | Cost
-------------+-------
Item1 | 42
Item2 | 100
Data 2
Name | Cost
-------------+-------
Item1 | 42
Item2 | 100
close_format
- 我在
table()
末尾缺少的类似功能,但格式是如此上个世纪以至于我忘记了我曾经对它们的了解,而且我可以在网上找到的所有示例每个程序只使用一种格式。我错过了什么?
最佳答案
_TOP
是一种页眉。 Perl 解释器将它打印在文件句柄的顶部。
使用 $~
告诉 Perl 解释器 FMT1_TOP
是调用 write
时应该使用的打印格式.
#!/usr/bin/perl
use FileHandle;
use strict;
use warnings;
sub table {
my ($name, $val);
$~ = "FMT1_TOP";
write;
format_name STDOUT "FMT1";
format_top_name STDOUT "FMT1_TOP";
($name, $val) = ("Item1", 42); write;
($name, $val) = ("Item2", 100); write;
format FMT1_TOP =
Name | Cost
-------------+-------
.
format FMT1 =
@>>>>>>>>>>> | @<<<<
$name, $val
.
}
print "Data 1\n"; table; print "\n";
print "Data 2\n"; table;
关于perl - 一个页面上的两种 perl 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40041051/
我是一名优秀的程序员,十分优秀!