子句說明
?
analyzer部分可以指定查詢串的分詞方式。可以指定全局或某些特定index的分詞方式,也可以指定某些index不分詞。
子句語法
analyzer=analyzer_descriptioncon [{',' analyzer_descriptioncon}]
多個analyzer_descriptioncon用逗號連接,analyzer_descriptioncon為下列表中的值,各參數含義及其取值如下表所示:
參數名 | 取值范圍 | 默認值 | 參數說明 |
no_tokenize_indexes | index_name1';'index_name2 | 無 | 支持查詢中指定的index不分詞(除分詞以外的其他流程如歸一化、去停用詞會正常執行),多個index之間用';'分割 |
specific_index_analyzer | index_name'#'analyzer_name | 無 | 查詢中指定index使用另外的分詞器,該分詞器會覆蓋global_analyzer和schema的分詞器。指定多個index時用';'隔開,例如:index1'#'analyzer1;index2'#'analyzer2。指定的值必須在analyzer.json里有配置 |
global_analyzer | IDENTIFIER | 無 | 查詢中指定全局的分詞器,該分詞器會覆蓋schema的分詞器,指定的值必須在analyzer.json里有配置。 如沒有指定global_analyzer,并且index不在specific_index_analyzer,no_tokenize_indexes,則按照建索引時候schema.json里配置的analyzer進行分詞處理 |
示例:
analyzer=global_analyzer:singlews_analyzer,no_tokenize_indexes:default,specific_index_analyzer:default#extend_analyzer;index2#aliws
注:該查詢指定default("筆記本")不分詞,index2("聯想")用aliws分詞,global_analyzer指定的index(“華碩”)用singlews_analyzer分詞
注意事項
analyzer子句為可選子句
analyzer子句中no_tokenize_indexes 、specific_index_analyzer >、global_analyzer 、schema中的analyzer的優先級如下:no_tokenize_indexes > specific_index_analyzer > global_analyzer > schema。比如:index1在no_tokenize_indexes和specific_index_analyzer中均出現,因no_tokenize_indexes優先級更高,故index1不分詞。
未填寫analyzer子句,則采用schema指定的分詞器 。