【发布时间】:2012-08-01 03:52:38
【问题描述】:
我已经使用一些数据创建了一个索引。现在我正在使用 WildcardQuery 来搜索这些数据。索引的文档有一个字段名称 Product Code 我正在搜索。
以下是我用于创建查询和搜索的代码:
Term productCodeTerm = new Term("Product Code", "*"+searchText+"*");
query = new WildcardQuery(productCodeTerm);
searcher.search(query, 100);
searchText 变量包含用于搜索索引的搜索字符串。如果searchString 是'jf',我会得到以下结果:
JF32358
JF5215
JF2592
现在,当我尝试使用 25, or f2 or f3 或仅使用 j,f,jf 以外的任何其他内容进行搜索时,查询没有命中。
我无法理解为什么会这样。有人可以帮我理解搜索出现这种情况的原因吗?
【问题讨论】:
-
大小写不是这里的问题。数字部分总是相同的,它们不是大写或小写。
-
但你说的是“f2”、“f3”,而不仅仅是“2”或“3”。
-
我提到了
25,它只包含数字。 -
好的,抱歉,错过了。以为这只是案例的原因:(
标签: java search lucene wildcard