2011-11-25 2 views
1

텍스트 기사에서 스트리밍 된 정보가 포함 된 웹 사이트에 대한 합리적인 검색 메커니즘을 구성하려고합니다. 나는 umbraco lucene의 조사에서 수색을하고있다.Lucene Examine에 대한 검색 기준

var filter = criteria 
      .GroupedOr(new string[] { "bodyText","titleText"}, SearchTerm) 
      .Compile(); 

은 무엇인가 :

그래서,이

내가 필터로 왔어요 무엇

이있다,의 내가 찾고 있어요 필드는 "bodyText"이고 "은 titleText"가정 해 봅시다 SearchTerm을 포함하는 결과 (예 : "iter"검색의 결과가 될 것입니다) 또는 해당 검색의 다른 개선 사항을 포함하는 더 나은 검색의 예는 무엇입니까?

답변

4

시도해 보셨습니까 Fuzzy()? http://umbraco.com/follow-us/blog-archive/2011/9/16/examining-examine.aspx

에서

때때로 사용자는 맞춤법이 틀린 또는 매우 가까운 수도 용어를 찾고 당신의 위치를 ​​조회합니다. 퍼지 (Fuzzy)는 Lucene이 당신의 용어처럼 보이는 용어를 찾을 수있게 해줍니다. 예를 들어 마운드는 실제로 소리가 날 수 있습니다.

var query = searchCriteria.Fields("nodeName","hello".Fuzzy(0.8)).Compile(); 

는 0과 1 사이의 퍼지로 전달하는 옵션 값은 경기가 원본에 얼마나 퍼지 또는 얼마나 가까운 지정합니다. 예를 들어 0.8의 임계 값이 지정되면 0.5의 일치가 반환되지 않습니다.

구문이 옳다는 것이 확실하지 않지만 그 문제를 해결해야합니다. 실제로 부분 단어 검색을하지는 않지만 원하는 단어를 더 가까이서 검색 할 수 있습니다.