Pregunta

¿Cuál es la mejor manera de analizar los textos de gran tamaño (5000 palabras y más), en busca nombres, que se almacenan en una base de datos? Los textos serán multilingüe.

Mi primera idea es un enfoque bastante ingenua, tomando todas las palabras que comienzan con una letra grande y compararlos contra la base de datos. Pero esto tiende a fallar en los textos que contienen letras minúsculas solamente.

Editar Los textos no son estáticos, sino dinámicos (por ejemplo, sitios web)

Mejor

Mac

¿Fue útil?

Solución

Otros consejos

Puede utilizar el Aho-Corasick algoritmo , y construir un diccionario con el nombres que se está comparando. Es lineal en el número de fichas en el texto más el número de nombres coincidentes.

Se necesita un diccionario de nombres.

O puede probar http://www.opencalais.com/ que conoce una gran colección bastante de nombres.

Hice un método para sustituir múltiples cadenas en un texto de gran tamaño aquí: Una mejor manera de reemplazar muchas cuerdas - ofuscación en C # . Tal vez se puede utilizar el mismo principio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top