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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |