perl中数组函数详解:join和split和splice
在perl中,
join()和
split()的功能是相反的。
一.join函数 ? ? ? $name="Tom"; $birth="01/02/86"; $addr="chengdu.sichuan"; $info=join(":",$name,$birth,$addr); print "1.$info"."n"; @list=("Tom","Joe","Tonny","chris"); @array=join("n",@list); $str=join("-",@list); print "2.$strn"; print "3.@array"; 4.结果: 1.Tom:01/02/86:chengdu.sichuan 2.Tom-Joe-Tonny-chris 3.Tom Joe Tonny chris 二、split函数 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? __DATA__ a:2:3:5 2:s:f:s e:r:t:y ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1)在第三种格式中,LIMIT是用来指定需要拆分的字段数目。若LIMIT的值小雨STRING中的字段数,则拆分后最后一个数组元素将包含所以剩余的。 (2)在第二种格式中,使用的变量其实是默认的$_
splice
splice函数有三个作用。第一个作用是向数组中间的一部分插入内容。例如: @d=(1..9); 将会得到12abcdef56789,注意这里是从第二个开始插入,不是从下标为2的元素开始插入的。 splice的第二个功能是删除,例如在刚才的代码上面再加上: splice(@d,6); #目标数组, 起始位置,删除长度 将可以得到1256789; splice的第三个功能就是删除到末尾。语法为: splice(@d,2); 就是从第二个开始,删除到末尾。 ? 我们还应该有一个可以把整个数组合并成一个标量的函数。这个函数就是join,join有两个参数,第一个参数是合并时放在元素之间的分割符,第二个是进行操作的数组。 例如: my @g=(1,3); 将可以得到“1 2 3”. undef(@a); # 作用是把@a的内容清空。 chop(@a); #作用是把数组内每个元素的末尾去一个字符。 chomp(@a); #作用则是把数组内的每一个元素的末尾的换行符去掉。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |