2009-03-02 109 views
3

我有这个Web应用程序需要做几个沉重的文本处理任务:删除某些字符,解析XML文件等。其中一些涉及正则表达式。Perl对于重度文本处理来说是一个很好的选择吗?

Web应用程序在Java中有一些实现,在PHP中有其他实现。是否值得使用Perl或其他特定的文本处理语言来处理这些任务,或者与使用PHP真的没有区别?

我甚至想过使用Sed,Awk甚至可能有一些编译的C脚本来处理文本。有很多文本需要处理...

+0

使用AWK noob !! :P (同事的笑话) – 2009-03-02 17:25:53

+0

AWK FTW! “Perl借鉴了其他编程语言的特性,包括C,shell脚本(sh),AWK和sed。” – 2009-03-02 18:26:16

回答

16

是的,Perl是一个不错的选择。作为一种语言,它绝对比Java或PHP更适合于这些类型的任务。如果你有Perl的知识,我会推荐它用于这种任务。

+0

我同意,但我会补充一点,PHP对于这项工作来说并不可怕。根据环境和熟练程度,PHP可能是一个不错的选择。 – troelskn 2009-03-02 17:40:30

+0

PHP在正则表达式IMO中有点弱,特别是因为引用混乱(就像在Java中一样)。 – 2009-03-02 19:07:32

3

文本处理正是Perl创建的。毕竟它是实用的提取和报告语言。另一方面,对于Web应用程序,我更喜欢Python。

3

是的,Perl的设计思想是处理文本。

它有很多有用的文本处理功能,它是我用过的第一种语言(很久以前),它有正则表达式。

http://en.wikipedia.org/wiki/Perl

6

Perl是用于文本processsing的语言。它的设计是考虑到了这一点。

2

是的。文本处理是PERL的头号强项。由于您将整合到您现有的应用程序中,因此您需要执行外部程序,以便考虑如何安全地运行它并且可能将其作为后台进程(以避免在实时Web应用程序中启动延迟)。

9

我也建议你使用Perl,它用于文本处理。但是,如果您要解析/处理XML,请不要试图推出自己的解决方案,有几个高质量的模块可以正确地完成这项工作。作为首发,我建议你看看XML::Twig

另外,对于正则表达式,在Regexp::Common分布下有几十个已经制作好的。很可能你会在那里找到你需要的东西,这会节省你的时间。

相关问题