2013-09-26 57 views

回答

0

你好,我不完全理解你的問題,但我想我對你想達到什麼有一個大概的想法。

如果你想單獨搜索語言,我建議你在索引時添加一個Lucene字段「語言」。根據您正在索引的文本的語言。

既然你可以使用易於區分英語caracters中國文字

Character.UnicodeBlock:

http://docs.oracle.com/javase/7/docs/api/java/lang/Character.UnicodeBlock.html

例如要檢查字符串 「海峽」 的字符1:

if(Character.UnicodeBlock.of(**str[1]**) == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS) 
{ do something } 

這種方式在搜索的時候可以用同樣的方法檢測中文輸入並在你的語言中添加一個條件ge字段查詢。

現在,如果您想要進行混合搜索,我建議您構建自定義分析器,分析每個單詞並將其存儲在索引中。