Tag: lucene

如何在Lucene 3.0.2中索引和搜索文本文件?

我是Lucene的新手,我在创建简单的代码来查询文本文件集时遇到了一些问题。 我试过这个例子 ,但是与新版本的Lucene不兼容。 UDPATE: 这是我的新代码 ,但它仍然无法正常工作。

你如何在.net上运行Lucene?

Lucene是一个优秀的搜索引擎,但.NET版本是官方Java版本的背后(最新的稳定.NET版本是2.0,但最新的Java Lucene版本是2.4,它具有更多function)。 你怎么解决这个问题?

使用Lucene计算类别中的结果

我正在尝试使用Lucene Java 2.3.2在产品目录上实现搜索。 除了产品的常规字段外,还有一个名为“类别”的字段。 产品可以分为多个类别。 目前,我使用FilteredQuery在每个类别中搜索相同的搜索词,以获得每个类别的结果数。 这导致每个查询20-30个内部搜索调用以显示结果。 这大大减慢了搜索速度。 使用Lucene有更快的方法来实现相同的结果吗?

如何索引lucene中的pdf,ppt,xl文件(基于java或python或php中的任何一个都可以)?

此外,我想知道如何在索引时添加元数据,以便我可以提升一些参数

如何在我的Lucene应用程序中使用ASCIIFoldingFilter?

我有一个标准的Lucene应用程序,可以从索引中搜索。 我的索引包含很多法语术语,我想使用ASCIIFoldingFilter。 我做了很多搜索,我不知道如何使用它。 构造函数接受一个TokenStream对象,当你发送一个字段时,我是否在分析器上调用检索TokenStream的方法? 那我该怎么办? 有人能指出我正在使用TokenFilter的例子吗? 谢谢。

Lucene Porter Stemmer不公开

如何在Lucene 3.6.2中使用Porter Stemmber类? 这是我有的: import org.apache.lucene.analysis.PorterStemmer; … PorterStemmer stemmer = new PorterStemmer(); term = stemmer.stem(term); 我被告知:在org.apache.lucene.analysis中,PorterStemmer不公开; 无法从外包装进入。 编辑:我也广泛阅读有关使用Snowball的内容,但不鼓励这样做。 什么是在Java中使用Lucene的正确方法?

Java中数据规范化的拼写校正

我正在寻找一个Java库来对用户生成的文本内容进行初始拼写检查/数据规范化,想象一下在Facebook个人资料中输入的兴趣。 此文本将在某个时刻(在拼写纠正之前或之后,无论哪种方式更好)被标记化,并且其中一些用作搜索(完全匹配)的键。 减少拼写错误等会产生更多匹配会很不错。 如果校正在令牌上的表现要好于一个单词,那就更好了,例如“喝咖啡”会变成“喝咖啡”而不是“喝咖啡”。 我找到了以下用于拼写纠正的Java库: JAZZY似乎没有积极发展。 此外,由于在社交网络配置文件和多字令牌中使用非标准语言,基于字典距离的方法似乎不合适。 APACHE LUCENE似乎有一个统计拼写检查器应该更合适。 这里的问题是如何创建一个好的字典? (否则我们不使用Lucene,因此没有现有索引。) 欢迎任何建议!

如何计算文档集的术语频率?

我有一个带有以下文件的Lucene-Index: doc1 := { caldari, jita, shield, planet } doc2 := { gallente, dodixie, armor, planet } doc3 := { amarr, laser, armor, planet } doc4 := { minmatar, rens, space } doc5 := { jove, space, secret, planet } 所以这5个文件使用了14个不同的术语: [ caldari, jita, shield, planet, gallente, dodixie, armor, amarr, laser, minmatar, rens, jove, space, […]

如何使用加权函数对多个字段的搜索结果进行排序?

我有一个Lucene索引,其中每个文档都有几个包含数值的字段。 现在我想根据该字段的加权和对搜索结果进行排序。 例如: field1=100 field2=002 field3=014 加权函数看起来像: f(d) = field1 * 0.5 + field2 * 1.4 + field3 * 1.8 结果应按f(d)排序,其中d代表文件。 排序function应该是非静态的,并且可能因搜索到搜索而不同,因为常量因素受执行搜索的用户的影响。 有谁知道如何解决这个问题,或者想知道如何以另一种方式实现这一目标?

solrj:如何通过索引中的多值字段存储和检索List

我的用例是一个包含在线媒体标题的索引。 数据提供者将类别列表与每个标题相关联。 我正在使用SolrJ通过带注释的POJO类填充索引 例如 @Field(“title”) private String title; @Field(“categories”) private List categoryList; 相关的POJO是 public class Category { private Long id; private String name; … } 我的问题有两个部分: a)这可能通过SolrJ – 文档只包含一个使用List of String的@Field的例子,所以我假设序列化/编组只支持简单类型? b)如何设置架构来保存它。 我有一个天真的假设我只需要在必填字段上设置multiValued = true它将全部通过魔法工作。 我刚刚开始实施这一点,所以任何回复都将受到高度赞赏。