최근 직장에서 내부 프로젝트를 위해 lucene.net에서 놀기 시작했습니다. lucene.net을 사용하여 일종의 자동 완성을 만들려고합니다. 내 색인은 표시 이름을 저장하며 와일드 카드 검색 즉 James *가 잘 작동합니다.필드에서 여러 단어 검색
제임스 본 *이라는 단어 사이에 공간이 생기는 문제가있는 것 같습니다. 첫 단어를 잊어 버린 채 보에 시도하고 시작하는 것 같습니다.
내가 잘못하고 있지만 다른 분석기 몇 개를 사용해 보았지만 운이 없다고 확신 할 수 있는지 확실하지 않습니다.
누구나 올바른 방향으로 나를 설레게 할 수있는 아이디어가 있습니까? 28/11/2012
내 프로젝트에서 다시보고 후, 나는 시도하고 여러 필드를 검색 할 MultiFieldQueryParser를 사용하던 것을 깨달았다. DefaultOperator를 변경하는 제안을 시도했지만 운이 없었습니다. 기본적으로
var analyzer = new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_30);
var mparser = new MultiFieldQueryParser(Lucene.Net.Util.Version.LUCENE_30, new string[] { "displayname", "company", "email" }, analyzer);
'queryParser.SetDefaultOperator (QueryParser.Operator.AND); '를 사용해 보셨습니까? –
"Lucene은 구문 검색 쿼리가 아닌 단일 용어 내에서 단일 문자 및 복수 문자 와일드 카드 검색을 지원합니다. [출처] (http://lucene.apache.org/core/old_versioned_docs/versions/2_9_1/queryparsersyntax.html) –
제안에 감사드립니다. 그것을 밖으로 시도하고 알려 드리겠습니다. –