2011-11-30 50 views
0

目前我使用PrefixQuery它的正常工作,但它得到的記錄一樣,如果我的網址是 http://xyz.com那麼它會得到http://xyz.comhttp://xyz.com/service/ ... 但它不能得到http://www.xyz.comhttp://xyz.co.in.i要基於URL的任何部分我的代碼是搜索: -在Lucene的一個URL的任何部分匹配

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

回答

0

可以使用WildcardQuery。但是你需要知道它的性能不好,特別是在使用領先的通配符進行查詢時(不是因爲執行得不好,而是因爲Lucene內部存儲其術語字典)。

不能通過使用自定義分析器來解決您的使用案例嗎?