perl中数组函数详解三:join和split

来源:互联网 发布:自动合成电子相册软件 编辑:程序博客网 时间:2024/05/17 06:04

在perl中,join()和split()的功能是相反的。
一.join函数
 1.作用:把数组元素或者几个字符串通过分隔符连接成单个字符串
 2.格式:join(DELIMITER,ARRAY或string[1,2,3...])
 3.实例:#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.$str\n";
print "3.@array";

4.结果:
1.Tom:01/02/86:chengdu.sichuan
2.Tom-Joe-Tonny-chris
3.Tom
Joe
Tonny
chris

二、split函数
 1.作用:与上面的join函数功能恰好相反,是通过指定的分隔符把字符串分割成一个一个的字段,形成一个数组返回
 2.格式:split(DELIMITER,STRING);
        split(DELIMITER,STRING,LIMIT);     
        split(DELIMITER);
 3.1.实例:#split(DELIMITER,STRING);
   $char="a/b/c/d/e/f";
   @letters=split("/",$char);
   print "1.@letters\n";

 3.2.输出结果:
  1.a b c d e f

 4.1实例:#split(DELIMITER);
   while(<DATA>){
      @ch=split(":");
      print "$ch[1]\n";
   }

__DATA__
1:2:3:5
2:s:f:s
e:r:t:y

 4.2输出结果:
 2
 s
 r




 5.1实例:#split(DELIMITER,STRING,LIMIT);     
   $string="Tom Joe Tonny chris";
   @names=split(" ",$string,2);
   print "1.$names[0]\n";
   print "2.$names[1]\n";
   print "3.$names[2]\n";

 5.2输出结果:
 1.Tom
 2.Joe Tonny chris
 3.

 6总结:
(1)在第二种格式中,LIMIT是用来指定需要拆分的字段数目。若LIMIT的值小雨STRING中的字段数,则拆分后最后一个数组元素将包含所以剩余的。
(2)在第三种格式中,使用的变量其实是默认的$_

原文见:http://www.51testing.com/?uid-364865-action-viewspace-itemid-222697

原创粉丝点击