-
噜噜哒
perl只有split一个函数分割字符串,没有完成同样功能的其它函数了。split因为要使用正则,要启动正则引擎,开销当然要大一点。如果想加快速度,只有自己用index搜索|,然后用substr获取指定的字段,自己编程循环搜索来代替split的功能,理论上效率要提高一点,但是能提高多少只有你自己实践了才知道。
-
慕森王
my @a = split /[_|-]/, $b;my ($a)=(split /[_|-]/, $b;)[1];my ($a,$c)=(split /[_|-]/, $b;)[1,3];my ($a,$b,$c)=(split /[_|-]/, $b;)[0..2];
-
白衣染霜花
substr map split 这些函数好像都可以吧,反正方法很多,就举个例子吧$a="111111111111111111111111111111111111";@b = $a =~ /\w{3}/g;print "@b\n";@c = unpack("(A3)*", $a);print "@c\n";for ($i=1;$i<=13;$i=$i+3){$b=substr($a,$i,3);push @d,$b;}print "@d";