匹配lucene中URL的任何部分

时间:2011-11-30 06:05:03

标签: lucene

目前我正在使用PrefixQuery它工作正常,但它得到的记录就像我的网址一样 http://xyz.com然后它会获得http://xyz.comhttp://xyz.com/service/ ... 但它无法获取http://www.xyz.comhttp://xyz.co.in.i想要根据网址的任何部分进行搜索: -

                    Term term = new Term("URL", siteUrl.toLowerCase());
        Query query1 = new PrefixQuery(term);
        booleanQuery.add(query1,BooleanClause.Occur.MUST);

1 个答案:

答案 0 :(得分:0)

您可以使用WildcardQuery。但是你需要知道它有糟糕的性能,特别是对于带有前导通配符的查询(不是因为它实现得很差,而是因为Lucene内部存储了它的术语字典)。

使用自定义分析器不能解决您的用例吗?