Perl é uma boa opção para o texto-processamento pesado?
Pergunta
Eu tenho esta aplicação web que precisa fazer várias tarefas de processamento de texto pesado: remoção de certos caracteres, análise de arquivos XML, entre outros. Alguns deles envolvem expressões regulares.
A aplicação web tem algumas implementações em Java e outros em PHP. Vale a pena usando Perl ou outra linguagem de processamento de texto específico para tais tarefas, ou há realmente nenhuma diferença com o uso de PHP?
Eu até pensei em usar Sed, Awk talvez até mesmo alguns scripts compilados C para processar textos. Há uma grande quantidade de texto a ser processado ...
Solução
Sim, Perl é uma boa opção. Como uma linguagem, é definitivamente mais adequado para esses tipos de tarefas do que Java ou PHP. Se você tem o conhecimento Perl, eu recomendo para este tipo de tarefa.
Outras dicas
eu também sugiro que você use Perl, é feito para o texto trituração.
No entanto, se você estiver indo para XML de análise / processo, por favor, não tente rolar sua própria solução, existem vários módulos de alta qualidade que fazem o trabalho corretamente. Como entrada, eu recomendo que você dê uma olhada XML :: Twig
Além disso, para expressões regulares, existem dezenas de queridos já assumidos no âmbito do distribuição Regexp :: Common . Muito provavelmente você vai encontrar o que você precisa lá e ela vai lhe poupar tempo.
Perl é a linguagem para processamento de texto. Ele foi projetado com isso em mente.
Processamento de texto é exatamente o que Perl foi criada. Afinal, é prática da extração e Idioma do relatório. Por outro lado, para aplicação web eu prefiro Python.
Sim, Perl foi projetado com o processamento de texto em mente.
Tem toneladas de texto útil processamento de recursos, e foi a primeira língua que eu usei (há muito tempo) que teve expressões regulares.
Sim. processamento de texto é # 1 ponto forte do PERL. Desde que você vai integrar no seu aplicativo existente, você precisa executar um programa externo para pensar sobre como executá-lo de forma segura e talvez como um processo de fundo (para evitar o arranque atrasos na sua verdadeira web app tempo.)