perl的grep,map用法及區別

1、map

對數組的每個元素計算語句值,最後將得到的最終值組成一個數組返回,$_爲當前元素值

格式:

1-1、 @arr=map 單條語句,@number;

1-2、 @arr=map {多條語句} @number;

例子:

@arr=map $_+1,1..3; // @arr=(2,3,4)

@arr=map {$_=$_+1;$_+1} 1..3; // @arr=(3,4,5)


2、grep


對數組的輪詢,語句(語句塊)爲真,則對將該元素加入到返回的數組中(返回的數組初始爲空),$_爲當前元素值

格式:

1-1、 @arr=grep 單條語句,@number;

1-2、 @arr=grep {多條語句} @number;

例子:

@arr=map $_%2==1,1..3; // @arr=(1,3)

@arr=map { $_%2==0} 1..3; // @arr=(2)


3、轉換

例子:

將找出一個1-100中所有的奇數


grep方式

@arr=grep $_%2==1, 1..100;


map方式

@arr=map {();if($_%2==1){$_;}else{();}} 1..100;



http://zk1878.iteye.com/blog/1164906

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