先放張圖
perl基本語法.png
上面是我總結(jié)的思維導(dǎo)圖映屋,將perl的一些基本語法客峭,還有簡單的注意事項記了下逸月,是看小駱駝學(xué)習(xí)的perl瘦穆。
學(xué)習(xí)原因
很簡單工作需要+perl寫起腳本來真的很厲害纪隙,尤其是正則,用起來太爽了扛或。
起初是因為工作需要绵咱,但是學(xué)習(xí)了perl正則之后,感覺perl真diao熙兔。
正題悲伶,perl學(xué)習(xí)總結(jié)
變量
perl中變量很簡單,我理解起來是:只有標(biāo)量住涉、數(shù)組和哈希三種麸锉。
- 1、標(biāo)量舆声,理解起來就是數(shù)值型花沉、布爾型和字符型的集合,可以直接使用纳寂,用變量名前用$號表示主穗。
- 2、數(shù)組毙芜,標(biāo)量的集合忽媒,有一個特點是,同一個數(shù)組中的標(biāo)量類型可能是不同的腋粥,感覺很神奇晦雨。
操作函數(shù):pop、push隘冲、sort闹瞧、reverse - 3、哈希展辞,鍵值對的組合奥邮。每個鍵對應(yīng)一個值。
操作函數(shù):keys罗珍、values洽腺、each、exists覆旱、delete
操作符
這里只介紹幾個perl與其他語法不一樣的操作符蘸朋。
- “x”,重復(fù)扣唱。例如‘-’ x5藕坯,就是‘-----’团南。
- “.”,連接兩個字符串炼彪,和其他高級語言用“+”連接字符串相同吐根。
- “..”,從到辐马。如 6..10佑惠,就是6、7齐疙、8膜楷、9、10贞奋。
邏輯控制
- 1赌厅、if。主要注意unless轿塔。其他沒什么特愿。
- 2、在while循環(huán)中可能看到勾缭,while(<>)揍障,看不懂不要慌,學(xué)到后面的輸入輸出就懂了俩由。
- 3毒嫡、注意next。
子程序
- 1幻梯、結(jié)構(gòu)
sub functionName {
...
}
- 2兜畸、參數(shù)傳遞
#調(diào)用
functionName(arg1、arg2...); #注意傳遞參數(shù)時碘梢,只能傳遞一個數(shù)組或者哈希咬摇,且要放在最后,哈希要用\%hash
#定義函數(shù)
sub functionName{
#接受參數(shù)
my (arg1, arg2...) = @_; #如果最后是哈希煞躬,調(diào)用方式:$arg->{key};
...
}
- 3肛鹏、返回值
有兩種方式。1恩沛,用return返回在扰。2、省略return复唤,則自動返回最后一次運算的結(jié)果健田。
輸入與輸出
- 1烛卧、輸入
標(biāo)準(zhǔn)輸入<STDIN>
$var = <STDIN> #默認從控制臺讀取一行
讀取open函數(shù)打開的文件
open(FILE, "<fileName"); # > 寫入佛纫,< 讀取等妓局,還有其他的符號
$var = <FILE> #讀取文件中的一行
鉆石輸入符 <>
perl program.pl fileNam #在控制臺輸入
#program.pl內(nèi)容
$var = <>; #讀取fileName中的一行。
循環(huán)讀取文件每行
while(<>)
{
...
}
- 2呈宇、輸出
這個我現(xiàn)在只掌握了一種
open(FILE, ">fileName"); #打開文件
print(FILE "......"); #寫入.......
最后幾個注意點
- 1好爬、注意perl中雙引號與單引號的區(qū)別
- 2、perl中特有的qw用法
- 3甥啄、直接將數(shù)組轉(zhuǎn)換為標(biāo)量可以得到長度
- 4存炮、可以進行列表賦值,($a $b $c) = ($c "ds" 2)