【发布时间】:2009-09-20 15:06:51
【问题描述】:
解析存储在数据库中的大型文本(5000 字或更多)、搜索名称的最佳方法是什么?文本将是多语言的。
我的第一个想法是一种相当幼稚的方法,将所有以大字母开头的单词与数据库进行比较。但这在仅包含小写字母的文本中往往会失败。
编辑 文本不是静态的,而是动态的(例如网站)
最好的
Mac
【问题讨论】:
标签: database search text names
解析存储在数据库中的大型文本(5000 字或更多)、搜索名称的最佳方法是什么?文本将是多语言的。
我的第一个想法是一种相当幼稚的方法,将所有以大字母开头的单词与数据库进行比较。但这在仅包含小写字母的文本中往往会失败。
编辑 文本不是静态的,而是动态的(例如网站)
最好的
Mac
【问题讨论】:
标签: database search text names
【讨论】:
您可以使用Aho-Corasick algorithm,并使用您尝试匹配的名称构建一个字典。它与文本中的标记数量加上匹配名称的数量成线性关系。
【讨论】:
你需要一本名字字典。
或者你可以试试http://www.opencalais.com/,它知道大量的名字。
【讨论】:
我在这里做了一个替换大文本中多个字符串的方法:A better way to replace many strings - obfuscation in C#。也许您可以使用相同的原理。
【讨论】: