佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > perl的格式化輸出及chomp的重要性分析

perl的格式化輸出及chomp的重要性分析

熱門標(biāo)簽:企業(yè)做大做強(qiáng) 客戶服務(wù) 語音系統(tǒng) Win7旗艦版 硅谷的囚徒呼叫中心 百度AI接口 電話運(yùn)營(yíng)中心 呼叫中心市場(chǎng)需求

復(fù)制代碼 代碼如下:

#!/bin/perl
print "please input some lines,then press Ctrl+Z. \n"; 
chomp(@s=STDIN>); 
print "1234567890"x 3 ."\n";#做為輸出結(jié)果的一個(gè)標(biāo)尺 
foreach $s(@s) 

printf "%20s\n",$s;#輸出的格式為右對(duì)齊,所占空間為20個(gè)字符 
}

輸出結(jié)果:
F:\&;perl\a.pl 
please input some lines,then press Ctrl+Z. 
how are you 
fine,thank you 
^Z 
123456789012345678901234567890 
 how are you#u在第20個(gè)字符處 
  fine,thank you

#------------------------

沒有chomp的程序:

復(fù)制代碼 代碼如下:

#!/bin/perl

print "please input some lines,then press Ctrl+Z. \n"; 
@s=STDIN>; 
print "1234567890"x 3 ."\n"; 
foreach $s(@s) 

printf "%20s\n",$s; 
}

輸出結(jié)果:
F:\&;perl\a.pl 
please input some lines,then press Ctrl+Z. 
how are you 
fine,thank you 
^Z 
123456789012345678901234567890 
how are you#u在第19個(gè)字符處 

 fine,thank you

來觀察下有什么不同,如果沒有用chomp,輸出的結(jié)果不僅中間有空格,并且可以發(fā)現(xiàn)最后的字符卻在第9上,相當(dāng)于在第19個(gè)字符處。這是因?yàn)閜erl把a(bǔ) newline 當(dāng)做一個(gè)字符。

第二部分:

如果我們自己指定字符串的寬度,那么程序如下:

復(fù)制代碼 代碼如下:

#!/bin/perl
print "Please input column width.\n"; 
chomp($width=>);#新建了一個(gè)變量。這里同樣要注意chomp的應(yīng)用,如果沒有chomp,我們會(huì)得不到我們想要的結(jié)果。 
print "please input some lines,then press Ctrl+Z. \n"; 
chomp(@s=STDIN>); 
print "1234567890"x7 ."\n"; 
foreach $s(@s) 

printf "%${width}s\n",$s;在這里引用了這個(gè)變量,因?yàn)樽兞棵J(rèn)取最大的字符長(zhǎng)度,所有這里我們用{}來界定變量的名稱。 
}

輸出結(jié)果:
F:\&;perl\a.pl 
Please input column width. 
30 
please input some lines,then press Ctrl+Z. 
how are you 
fine,thank you 
^Z 
1234567890123456789012345678901234567890123456789012345678901234567890 
   how are you 
fine,thank you

下面是沒有width=>,沒有經(jīng)過chomp的話,會(huì)出現(xiàn)如下結(jié)果:
F:\&;perl\a.pl 
Please input column width. 
30 
please input some lines,then press Ctrl+Z. 
how are you 
fine,thank you 
^Z 
1234567890123456789012345678901234567890123456789012345678901234567890 
%30#這里的30因?yàn)闆]有去掉轉(zhuǎn)行符,所有是30+轉(zhuǎn)行符,得到了這種結(jié)果 

%30 
s

標(biāo)簽:海南 山西 濟(jì)南 長(zhǎng)沙 安康 崇左 山西 喀什

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《perl的格式化輸出及chomp的重要性分析》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    通州区| 甘洛县| 兴海县| 安远县| 易门县| 刚察县| 手机| 旺苍县| 宁河县| 民权县| 淳化县| 彭泽县| 师宗县| 松原市| 宁陕县| 正定县| 永州市| 南岸区| 桑植县| 大邑县| 日土县| 天水市| 张家口市| 灵石县| 福海县| 绥芬河市| 太保市| 象州县| 邹城市| 房山区| 苗栗市| 安龙县| 仙居县| 行唐县| 海丰县| 克什克腾旗| 泰和县| 澄城县| 密云县| 额济纳旗| 连云港市|