perl 是否有比split函数更高效的拆分数据的方法?

perl 是否有比split函数更高效的拆分数据的方法?


芜湖不芜
浏览 744回答 3
3回答

噜噜哒

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&nbsp;map&nbsp;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";
打开App,查看更多内容
随时随地看视频慕课网APP