给定实体术语的有限字典,我正在寻找一种使用 Lucene 进行智能标记的实体提取方法。目前我已经能够将 Lucene 用于:
- 搜索具有一些模糊性的复杂短语
- 突出显示结果
但是,我不知道如何:
- 获得匹配短语的准确偏移量
- 每次匹配执行特定于实体的注释(不仅仅是每次点击的标签)
我尝试过使用 explain() 方法——但这只会给出查询中获得命中的术语——而不是原始文本中命中的偏移量。
有没有人遇到过类似的问题并愿意分享潜在的解决方案?
提前感谢您的帮助!
给定实体术语的有限字典,我正在寻找一种使用 Lucene 进行智能标记的实体提取方法。目前我已经能够将 Lucene 用于:
- 搜索具有一些模糊性的复杂短语
- 突出显示结果
但是,我不知道如何:
- 获得匹配短语的准确偏移量
- 每次匹配执行特定于实体的注释(不仅仅是每次点击的标签)
我尝试过使用 explain() 方法——但这只会给出查询中获得命中的术语——而不是原始文本中命中的偏移量。
有没有人遇到过类似的问题并愿意分享潜在的解决方案?
提前感谢您的帮助!
对于偏移量,请参见这个问题:How get the offset of term in Lucene?
我不太明白你的第二个问题。不过,在我看来,您想从存储的字段中获取数据。要从存储的字段中获取数据:
TopDocs results = searcher.Search(query, filter, num);
foreach (ScoreDoc result in results.scoreDocs)
{
Document resultDoc = searcher.Doc(result.doc);
string valOfField = resultDoc.Get("My Field");
}