Perl學習筆記(一)

最近開始實習開始學習小駱駝書qwq

首先注意一個歷史遺留問題:
另一種語言Perl 6,在開始設計的時候是希望將它作爲Perl 5的新版,但人們漸漸發現它有很多特性都發生了變化,基本成爲了一種新的語言,所以不再改名字,直接用Perl 6代替這種新的語言。如果我們說的是Perl,那麼它默認的是Perl 5。

Perl語言:實用摘錄與報表語言(Practical Extraction and Report Language)
或者病態折中式垃圾列表器其實作者Larry Wall是先想出Perl這個詞,然後強行進行解釋的=-=|||

Per的四大特點:
1.Perl易於使用
2.Perl幾乎不受限制(比如有人編寫中斷-微內核層次的設備驅動程序)
3.Perl的運行速度還是挺快的
4.Perl代碼看起來比較醜

CPAN是Perl 綜合典藏網(Comprehensive Perl Archive Network),裏面有各種模塊,各種文檔。

第一個helloworld程序helloworld.pl:
#!/usr/bin/perl
print "Hello World\n!";

perl腳本文件是.pl後綴命令行模式下,執行pl文件可以perl helloworld.pl或者./helloworld.pl(這種方式需要chmod改變權限)

這個簡單的程序在Perl 5.10及其後續版本中可以有另一種不同的寫法

#!/usr/bin/perl
use v5.18;		#一定不要忘記分號,注意這裏的v可以省略,小數點後變成三位:use 5.018;
say "Hello World";

運行程序時,Perl內部的編譯器會先載入整個源程序,將之轉換爲內部使用的bytecodes,這是一種在Perl內部用來表示程序語法樹的數據結構,然後交給Perl的bytecode引擎執行。

第一個應用實例講解:

#!/usr/bin/perl
@lines=`perldoc -u -f atan2`;		#反引號調用了外部命令
foreach(@lines){		#啓動一個循環,依次對每行數據進行處理。
	s/\w<([^>]+)>/\U$1/g;
	print;
}

上面的外部命令perldoc用來閱讀Perl及其相關擴展和工具程序的說明文檔。當反引號裏的命令執行完畢後,輸出結果會一行行的依次存儲在@lines這個數組變量中。

循環內部的意思:對每一個包含<>的行進行相應的數據替換操作。而在perldoc命令的輸出結果裏,應該至少有一行符合此操作條件。

運行對比圖:
在這裏插入圖片描述

在這裏插入圖片描述

很多時候,我們都是用Perl來做這種數據轉換工作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章