2009-12-03 5 views
9

SOLR 검색에 문제가 있습니다. 내가 쿼리를 검색 할 때 : dog * 모든 것이 정상이지만 쿼리가 Dog * (첫 번째 대문자 포함) 일 때 아무런 결과도 얻지 못합니다. 어떤 충고? 내 설정 :SOLR - 대문자 와일드 카드 검색

<fieldType name="text" class="solr.TextField" positionIncrementGap="100"> 
    <analyzer type="index"> 
    <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 
    <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
    </analyzer> 
    <analyzer type="query"> 
    <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> 
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 
    <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
    </analyzer> 
</fieldType> 

답변

10

다른 리소스에 대한 답변을 받았습니다. 문제는 다음과 같습니다. http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters "와일드 카드 및 퍼지 검색에서 검색 텍스트에 대한 텍스트 분석이 수행되지 않습니다."

희망은 누군가를 도울 것입니다.

+0

안녕하세요, Yurish, 감사합니다. 나는 정말로 붙어있다. 와일드 카드 검색을 수행하는 유일한 방법은 "q.alt"입니까? 그렇다면 "q.alt"를 사용하고 강조 표시 할 수 있습니까? 와일드 카드로 "q"를 할 수 있다면, 어떻게? – andy

+1

와트 용으로 와일드 카드가 필요합니까? 현재 라트비아어로 검색해야하기 때문에 Hunlsell을 SOLR 형태로 구현하고 있습니다.하지만 많은 문법이있어 색인을 제동합니다. "손이 묶여 있기 때문에"문법이 필요하기 때문에 다른 방법을 생각하십시오. q.alt는 "기본 쿼리 (q)가 지정되지 않은 (또는 비어있는 경우) 사용할 대체 쿼리"이기 때문에 도움이되지 않습니다. 와일드 카드 및 텍스트 분석을 통해 도움을받을 수있는 사례는 없습니다. – Yurish

0

EdgeNGram을 사용해 보셨습니까? 질문 : 2413946에 대한 제 대답을보십시오.