perl格式化输出一个简单实用的例子
?
$~ = "table_header";write;%stuinfo=(1=>'zhang san',2=>'li si',3=>'wang wu',4=>'zhao liu');foreach $key (keys %stuinfo){ $stuid=$key; $stuname=$stuinfo{$key}; $~ = "table_row"; write;}format table_header =---------------------id name---------------------.format table_row =@<<<<<< @<<<<<<<<<<<<<$stuid , $stuname.?
输出:
?
---------------------id name---------------------4 zhao li1 zhang san3 wang wu2 li si
?
注:
1、格式定义
format formatName=
#格式定义---------------------
#格式定义-----------------------
.
?
ps:格式定义以点号结束
?
2、格式调用
$~ = "table_header";
write;? ? ?
?
ps:如果不给$~赋值,默认是STDOUT
?
3、<<<<, 表示向左对齐,>>>>>>>>表示向右对齐,|||||||||||||||||表示中间对齐,一个符号代表一个变量中的字符
? ? ?比如你的<符号才3,而stuid有5位,则下方显示时只显示3位stuid,这点须注意
4、@,^表示下方的变量,所在行通常与对齐符号配合,下一行要有变量,看上例$stuid,$stuname
?
?
?