Hola amig@s:
Resulta que me han mandado un ejercicio para programarlo en Perl y no sé cómo empezar,no digo que me lo hagáis(hombre,si alguien sabe cómo hacerlo pues mejor que mejor) pero si os pido que me digáis si alguien lo sabe cómo plantearlo y que funciones emplear y demás,sé algo de perl pero aún me falta mucho.El enunciado es el que sigue:
Localizador de concordancias
Para los filólogos resulta especialmente interesante estudiar las distribuciones de determinadas palabras en un texto. Para ello es muy útil el uso de un localizador de concordancias. Un localizador de concordancias es un programa que a partir de un filtro de búsqueda, localiza todas las palabras que encajan con el filtro en un texto y las muestra junto a su contexto.
Desarrollar un programa en perl que actue como un localizador de concordancias. Este programa recibirá los siguiente parámetros:
concordancias filtro texto
Donde texto será el nombre de un fichero de texto analizado morfológicamente. Esto es, un texto donde aparece en cada línea una palabra seguida de su análisis morfológico. Puede que aparezca más de un análisis para la misma palabra. Ejemplo:
El [ArtMasSg]
niño [NomMasSg]
salta [VerTerSg]
El filtro consistirá en un fichero con varias línea. Una por cada condición buscada. Este fichero tendrá el siguiente formato por cada línea:
palabra atributo valor
Donde:
palabra = Número que indica la palabra a la que hace referencia el filtro en relación a la palabra buscada. Así, por ejemplo, -1 hace referencia a la palabra anterior, 2 hace referencia a la segunda palabra a partir de la buscada y 0 hace referencia a la palabra buscada.
atributo = Atributo de la palabra que se quiere restringir en el filtro. Puede ser: Palabra, Tipo, Numero, Persona, Género.
valor = Valor que debe tener el atributo de las palabras buscadas.
El filtro buscará todas las palabras que cumplan todas las condiciones del filtro y mostrará por pantalla un listado alfabético de las mismas. En este listado debe aparecer una línea por cada palabra junto al número de apariciones. Seguida de una línea por cada aparición de la palabra donde se la muestre junto a su contexto. El contexto vendrá determinado por las posiciones a las que se haga referencia en el filtro. Esto es, si el filtro hace referencia a una palabra 3 posiciones por delante, entonces el listado deberá mostrar las tres palabras anteriores. Ejemplos:
niño 1
El niño salta
Gracias desde ya.Un saludo