Perl數(shù)組Grep()函數(shù)
Perl grep()函數(shù)是一個(gè)過濾器,它對(duì)數(shù)組的每個(gè)元素運(yùn)行正則表達(dá)式,僅返回評(píng)估為true的元素。使用正則表達(dá)式可能非常強(qiáng)大和復(fù)雜。grep()函數(shù)使用語法@List=grep(Expression,@array)。
使用Grep()函數(shù)返回真實(shí)表達(dá)式
@myname=('Jacob','Michael','Joshua','Mathew','Alexander',&
@grepNames=grep(/^ A
把@myNames數(shù)組想象成一排編號(hào)框,從左到右,編號(hào)從零開始。grep()函數(shù)遍歷數(shù)組中的每個(gè)元素(框),并將其內(nèi)容與正則表達(dá)式進(jìn)行比較。如果結(jié)果true,則將內(nèi)容添加到新的@grepNames數(shù)組中。
在上面的例子中,正則表達(dá)式/^ A/正在尋找以大寫A開頭的任何值。在篩選@myNames數(shù)組的內(nèi)容之后,@grepNames的值變?yōu)椋?Alexander','Andrew'),以大寫A開頭的**兩個(gè)元素。
反轉(zhuǎn)Grep()函數(shù)中的表達(dá)式
使此特定功能更強(qiáng)大的一種快速方法是使用NOT運(yùn)算符反轉(zhuǎn)正則表達(dá)式。正則表達(dá)式然后尋找評(píng)估為false并將其移動(dòng)到新數(shù)組中的元素。
@myname=('Jacob','Michael','Joshua','Mathew','Alexander',&
@grepNames=grep(!/^一個(gè)
在上面的例子中,正則表達(dá)式正在尋找任何不以大寫a開頭的值。在篩選@myNames數(shù)組的內(nèi)容之后,@grepNames的值變?yōu)椋?Jacob','Michael','Joshua','Matthew')。
About Perl
Perl是一種適應(yīng)性強(qiáng)的編程語言,經(jīng)常用于開發(fā)web應(yīng)用程序.Perl是一種解釋性語言,而不是編譯語言,因此它的程序比編譯語言占用更多的CPU時(shí)間-這個(gè)問題隨著處理器速度的提高而變得不那么重要。但是,用Perl編寫比用編譯語言編寫要快,因此保存的時(shí)間是你的時(shí)間。
開展健康知識(shí)講座的信息