Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Intermedio » Identificación de edades Responder al tema
Nuevo tema


Página 1 de 1  [ 3 mensajes ] 
 
Nota 2011-07-24 12:07 @547

Perlero Nuevo
Registrado: 2009-04-16 13:59 @624
Mensajes: 41
Identificación de edades
Me gustaría saber qué tecnica puede ser la más efectiva para identificar edades en un texto. Está claro que no es suficiente con buscar la cadena "X años" ya que puede ser confundido con un periodo de tiempo (p.e trabajó durante 2 años).

¿Alguien tiene alguna idea?

Gracias.


Nota 2011-07-24 15:27 @685

Perlero Frecuente
Registrado: 2011-01-22 12:56 @580
Mensajes: 118
Re: Identificación de edades
Obviamente depende del texto... hay decenas de enfoques posibles, imagino que echar un vistazo al verbo ayudará

por ejemplo

1 - sacar con grep() todo lo que lleve números seguido de años, meses (o días o minutos si vas a incluir recién nacidos)

@validos = ('tiene', 'nace hace', 'nació hace','cumplió');
@no_validos = ('trabajo', 'estuvo','está', 'cumplió');

observa que 'cumplió' puede aparecer en ambos casos: 'cumplió X años' (de condena) así que tendrás que tratarlo como un caso especial y poder diferenciarlo o no funcionará. Buscar la cadena "y un día" puede ayudar aquí.

2 - sacar la palabra anterior con un regexp
3 - bucle if() para comparar esa palabra

si existe en válidos seguido de número seguido de años o meses o días... hacer algo, por ej. print()

si existe en no_válidos seguido de número seguido de años o meses o días ... next

else print "no sé qué hacer con esto"

etc


Nota 2011-07-25 03:16 @178
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10260
Re: Identificación de edades
Sí, es muy complicado, pues lo ideal sería hacer una interpretación del significado de lo que se dice, y eso está algo alejado de los temas que tratamos aquí. Es más bien un trabajo de tesis doctoral :)

La forma sencilla es buscar por palabras clave ("edad", "años", "nacimiento", "fecha", "tiene", etc), extraer esas frases, e intentar filtrar los falsos positivos.

_________________
JF^D Perl programming


Responder al tema  [ 3 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO