解析存储在数据库中的大型文本(5000个字以上),搜索名称的最佳方法是什么?文本将是多语言的。
我的第一个想法是一种相当天真的方法,将所有单词以大写字母开头,并将它们与数据库进行比较。但是,在仅包含小写字母的文本中,这往往会失败。
修改 文本不是静态的,而是动态的(例如网站)
最佳
的Mac
答案 0 :(得分:4)
使用您的RDBMS内置全文索引功能。
答案 1 :(得分:0)
您可以使用Aho-Corasick algorithm,并使用您尝试匹配的名称构建字典。它与文本中的标记数量以及匹配名称的数量呈线性关系。
答案 2 :(得分:0)
您需要一个名字字典。
或者您可以尝试http://www.opencalais.com/知道相当多的名字。
答案 3 :(得分:0)
我在这里制作了一个替换大文本中多个字符串的方法:A better way to replace many strings - obfuscation in C#。也许你可以使用相同的原则。