Como determino a parte semelhante mais longa de várias seqüências de caracteres?

De acordo com o título, estou tentando encontrar uma maneira de determinar programaticamente a maior porção de semelhança entre várias seqüências de caracteres.

Exemplo:

file:///home/gms8994/Music/t.A.T.u./file:///home/gms8994/Music/nina%20sky/file:///home/gms8994/Music/A%20Perfect%20Circle/

Idealmente, eu voltariafile:///home/gms8994/Music/, porque essa é a parte mais longa comum a todas as três strings.

Especificamente, estou procurando uma solução Perl, mas uma solução em qualquer idioma (ou mesmo pseudo-idioma) seria suficiente.

Dos comentários: sim, apenas no começo; mas existe a possibilidade de haver outra entrada na lista, que seria ignorada para esta pergunta.

questionAnswers(7)

yourAnswerToTheQuestion