成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Perl格式化輸出概念詳解

開發 架構
Perl語言有很多值得學習的地方,那么你對Perl格式化輸出的概念是否熟悉,這里和大家簡單分享一下,希望本文的介紹能讓你有所收獲。

本文和大家重點討論一下Perl格式化輸出的概念,我們已經見過用print函數將原始的未格式化的文本輸出到文件,本章講述如何用函數write和打印格式來生成Perl格式化輸出。

Perl格式化輸出

我們已經見過用print函數將原始的未格式化的文本輸出到文件,本章講述如何用函數write和打印格式來生成格式化的輸出。

一、Perl格式化輸出之定義打印格式

定義打印格式的關鍵字為format,語法為:

formatformatname=
lines_of_output

◆打印格式名formatname的命名規則與一般變量相同。結束行為一個句號,此行不能有任何其它字符,包括空格,句號必須是該行第一個字符。
打印格式的定義象子程序一樣可以放在任何地方,甚至可以放在條件語句中,但是最好把它們集中放在程序的開頭或結尾。

二、Perl格式化輸出之顯示打印格式

打印格式的顯示有兩步:
1、將系統變量$~設成所要使用的格式
2、調用函數write
例如:

  1. 1:#!/usr/local/bin/perl  
  2. 2:  
  3. 3:$~="MYFORMAT";  
  4. 4:write;  
  5. 5:  
  6. 6:formatMYFORMAT=  
  7. 7:===================================  
  8. 8:HereisthetextIwanttodisplay.  
  9. 9:===================================  
  10. 10:.  

結果輸出如下:

$program
===================================
HereisthetextIwanttodisplay.
===================================
$
如果不用$~指定打印格式,Perl解釋器就假定要使用的格式名與要寫入的文件變量同名,在本例中,如果不指定使用MYFORMAT,則Perl解釋器試圖使用名為STDOUT的打印格式。

三、Perl格式化輸出之在打印格式中顯示值

我們使用打印格式的主要原因當然是格式化存貯在簡單變量或數組變量中的值從而生成可讀性好的輸出,這一目的用“值域”來實現。每個值域指定一個值,如變量或表達式,調用write函數時,該值就以值域指定的格式顯示。

1、通用的打印格式

打印格式的一個缺點是定義中包含了變量名,例如:

formatMYFORMAT=
==========================================================
Thewinningnumberis@<<<<<<!
$winnum
==========================================================

◆當調用write輸出此格式時,必須記著它使用了變量$winnum。用子程序和局域變量就可以創建更通用的打印格式。

2、Perl格式化輸出之格式和局域變量

在上例中,你可能已經注意到子程序write_letter調用write輸出字母及其出現次數,即使格式定義在子程序外部仍能正常工作。在第17行中將字母及其出現次數傳遞給該子程序,在子程序中,打印格式使用局域變量$letter和$value,這樣保證了在foreach循環中每次輸出當前的字母和值。
然而要注意的是,使用my定義的局域變量要求格式定義在子程序內部,否則就不會輸出,因此,用write輸出的局域變量一定要用local定義。(local和my詳見《子程序》一章)
注:Perl4中沒有my函數,故不會有此問題。

3、選擇值域格式

我們已經知道了打印格式和write函數怎么工作,現在來看看值域的格式,見下表:


每個值域的第一個字符是行填充符,當使用@字符時,不做文本格式化。對文本的格式化稍后來講。
在上表中,除了多行值域@*,域寬都等于其指定的包含字符@在內的字符個數,例如:
@###.##
表示七個字符寬,小數點前四個,小數點后兩個。

4、輸出值域字符

在打印格式里,特定字符如@、<和>被看作值域定義,那么如何將它們輸出呢?方法如下:

formatSPECIAL=
Thislinecontainsthespecialcharacter@.
"@"

【編輯推薦】

  1. 全面認識Perl格式化輸出用法
  2. Perl文件句柄概念詳解
  3. 實例解析Perl守護進程用法
  4. Perl學習筆記----Perl格式化輸出詳解
  5. 術語匯編 Perl變量中Perl關聯數組用法解析

 

責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-15 11:29:25

Perl格式化輸出

2010-07-16 14:37:26

Perl格式化輸出

2010-07-16 15:44:57

Perl格式化輸出

2010-07-16 16:00:08

Perl格式化輸出

2010-07-15 11:16:25

Perl格式化輸出

2010-07-21 14:25:24

Perl格式化輸出

2010-07-20 16:05:07

Perl包

2024-01-08 22:03:22

python代碼開發

2010-07-13 09:50:55

Perl數組

2010-07-14 15:23:19

Perl文件句柄

2020-09-02 07:19:41

printf 格式化輸出Unix

2010-07-20 15:36:58

Perl語法

2023-04-11 10:37:40

bash命令printf

2010-07-20 09:05:08

Perl類

2022-06-26 08:39:19

Spring容器字段格式化

2010-07-13 14:16:56

Perl控制流

2010-07-14 11:27:42

Perl多進程

2010-07-15 15:47:46

Perl守護進程

2022-05-09 14:04:27

Python字符串格式化輸出

2022-12-30 08:30:28

Linux命令行json
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产国拍亚洲精品av | 999久久久 | 欧美一级免费黄色片 | 成人网址在线观看 | 亚洲日本欧美 | 久久成人国产精品 | 91久久精品国产91久久 | 国产精品久久久亚洲 | 国产精品久久久久久亚洲调教 | 天堂一区在线观看 | 欧美不卡在线 | www.日韩| 国产第1页 | 国产精品国产三级国产aⅴ中文 | 亚洲一区二区三区免费在线观看 | 美女视频一区 | 视频在线一区 | 日本一区二区三区免费观看 | 欧美三级三级三级爽爽爽 | 网站黄色在线免费观看 | 久久日韩粉嫩一区二区三区 | 国产成人午夜电影网 | 久久久久久国产精品免费免费 | 日韩精品一区二区三区在线观看 | 久国产精品 | www.成人在线视频 | www亚洲精品 | 日日操夜夜干 | 中文字幕视频一区二区 | 98久久| 在线看日韩 | 久久伊人精品一区二区三区 | www.黄色网 | 国产一在线观看 | 国产一区二区三区在线观看免费 | 国产精品视频播放 | 97人澡人人添人人爽欧美 | 久久99国产精品久久99果冻传媒 | 亚洲一区二区在线视频 | 亚洲精品一区中文字幕乱码 | 午夜一区二区三区视频 |