作者teyton (ton)
看板Perl
标题[问题] 逐行处理大档有更快的方法吗
时间Sun Apr 26 00:40:57 2009
请教各位高手,
我需要用perl对大档做典型的每行比对撷取处理工作,
可是效能似乎不佳,是逐行处理的工作本身就一定很慢?或是有没有更快的写法呢?
感恩!
ps. 我有拿掉处理资讯的部分,效能还是很慢,确认瓶颈不是在那边
open (MYFILE, 'largeFile.txt');
while (<MYFILE>) {
chomp;
# 判断该行是否需要,若不需要直接跳一下行
# 对该行做字串比对
# 撷取行中部分资讯
# 处理资讯
}
close (MYFILE);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.105.15.131
1F:推 abliou:看你的记忆体够不够大,够就全部丢下去看会不会快点 04/26 00:44
2F:推 LiloHuang:整个读进来反而更慢 这样已经是最快的作法了 04/26 02:19
3F:推 LiloHuang:如果你还是认为很慢 那你可以用C写一个版本测测看 04/26 02:19
4F:推 LiloHuang:如果速度有改善那就用 perlxs 写一个模组罗 :) 04/26 02:20
5F:→ weiyucsie:可以先用grep取出需要的部份吗?XD 如果行数不多的话 04/26 03:17
6F:推 weiyucsie:我指的是需要的行数不多 且可以用regex判断的话 04/26 03:33
7F:→ teyton:了解..全部读进来我试过真的较慢..我可以试试perlxs和grep 04/26 10:48