对文本处理,shell,sed,awk和perl那个性能好呢

目前需要准实时的对文件进行处理,然后入库,因为数据库性能已经不堪重负,因此在入库前对数据进行文件级别的过滤。
整个控制流程采用perl,但是对文件进行过滤是最耗时的工作,因此想问一下大虾门,采用shell,sed,awk和perl哪种对文本处理的性能会强悍一点。
主要的过滤功能如下:
A文件是详单,B文件是维度,A文件根据B文件里面不存在的维度进行过滤。
如:
A文件:
A,DFSFD,FWFDG,DFSFDS
B,FDSFD,FSDFDS,FDSFER
C,FDSDRR,FDSDRG,DFDW
D,DRFSDR,FWRG,FDWRRD
B文件:
A
B
则过滤后,仅剩下:
A,DFSFD,FWFDG,DFSFDS
B,FDSFD,FSDFDS,FDSFER
请提供一下性能最优的核心代码,谢谢!;)

作者: fikong2005   发布时间: 2011-05-17

性能估计差不多,都是最简单的 RE 匹配

作者: zhlong8   发布时间: 2011-05-17

都不是底层的需求,我也认为性能会差不多,重要的是算法

作者: iamlimeng   发布时间: 2011-05-17

谢谢楼上2位,借问可否有比较佳的算法,呵呵。

作者: fikong2005   发布时间: 2011-05-17

你连个能跑的都还没写……
把 b 构建成 /^(?:A|B),/ 这样的 RE 和 A匹配下来过滤。如果真的 b 有那么简单你还可以用 c 来写个函数来扩展 Perl 怎么搞都行,但是最终你还是要测试才能知道哪个最优

作者: zhlong8   发布时间: 2011-05-17