2011-12-16 3 views
1

Lucene.Net을 사용하고 있지만 여전히 non.Net 풍미에 대해 확신합니다.Lucene : 쿼리 파서가 예상대로 작동하지 않습니다.

Collection:drwho AND Format:"Blu-ray" 

이 쿼리 파서 여기에 무엇이다 :

{+Collection:drwho +Format:"blu ray"} 

이 난 후 누구인지 명확하지 않다

내 쿼리입니다. 다음 코드는 제가 사용하고있는 코드입니다 :

Dim analyzer = New StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_29) 
Dim qp = New QueryParser(Lucene.Net.Util.Version.LUCENE_29, Nothing, analyzer) 
Dim q As Query = qp.Parse(query) 

왜 쿼리를 버티고있는가에 대한 아이디어가 있습니까? 이 인덱스에서 용어의 정확한 매칭을 필요로하기 때문에 http://lucene.apache.org/java/3_4_0/queryparsersyntax.html에 따르면, 나는 내 인생은 하나가 코드에서 TermQuery를 만들거나 KeywordAnalyzer를 사용해야합니다 NOT_ANALYZED 필드의 ... 내 질문에 어떤 문제가 있는지

+0

무엇을 하시겠습니까? – adrianbanks

+0

음 ... work :). Field.Index.NOT_ANALYZED를 사용하여 문서를 추가하면 검색이 작동하지 않습니다. –

답변

0

을 볼 수에 대한 다른 분석기가 입력을 처리하는 쿼리 (입력 내용은 인덱스에 Blu-ray으로 저장되어 있음)에서 이미 알았 듯이 Blu-rayblu ray으로 변환합니다.

필드를 ANALYZED으로 변경하고 인덱싱하는 동안 StandardAnalyzer를 사용하면 쿼리가 현재 양식에서도 작동합니다.

관련 문제