2012-04-27 61 views
1

我在Solr搜索中遇到問題。 我的架構如下在字符串類型字段上搜索時遇到問題

<fieldType name="c_text" class="solr.TextField"> 
<analyzer type="index"> 
    <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
</analyzer> 
<analyzer type="query"> 
    <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
</analyzer> 
</fieldType> 
<field name="parentId" type="string" indexed="true" stored="true"/> 
<field name="data_s" type="c_text" indexed="true" stored="true"/> 
<field name="email" type="string" indexed="true" stored="true"/> 
<field name="receivedDate" type="tdate" indexed="true" stored="true"/> 

我在電子郵件字段上搜索。其中包含下列格式
塔倫Nagpal <[email protected]>

//This is working fine 
email:*tarun* 

但以下是給沒有結果

email:"Tarun Nagpal" 

能否請你幫,爲什麼它不象搜索短語數據搜索電子郵件字段。 在data_s字段上搜索工作正常。

+0

嘗試在'電子郵件搜索: 「塔倫nagpal」'。 – 2012-04-27 20:46:02

回答

3

您需要使用文本字段類型,因爲你想要搜索的標記:

要爲Tarun Nagpal <[email protected]>具體:

一個場會回答==平等和通配符查詢,如*un Nagp**[email protected]>甚至更顯然是異國情調的疑問。

一個文本場會回答令牌tarunnagpaltarunnabccom

實現N-gram和Soundex的其他字段類型甚至可以更正拼寫。


看到優秀的https://stackoverflow.com/a/2119479/604511

相關問題