2012-02-20 2 views
3

"fish"라는 단어를 검색 할 때 해당 단어와 그 단어의 변형을 포함하는 문서 목록이 반환됩니다. 나는이처럼 보이는 조각 볼 수 있습니다 강조 설정 한 경우 : 법이 요구를 그 사람 <em> 낚시 공공 호수 </em> ...Solr에 의해 강조 표시된 용어 목록 가져 오기

I는 사용자에게 의해 잘 작동 위의 코드 조각을 보여 드리고자합니다

그런데 모든 스 니펫을 보여 주면 강조 표시된 전체 단어 목록을 사용자에게 보여주고 싶습니다.

예를 들어 나는 다음과 같은 사용자 보여줄 수 있도록하고 싶습니다 :

섹션 18.32A - 사냥 및 낚시 을 ... 법은 필요로 대중 호수에서 사람 <em> 낚시</em> 그 ... 문서도 포함되어 물고기, 낚시, 어부를

그대는 SOLR 고하는 것보다 다른 단어의 목록을 얻을 수있는 방법이다 전체 문서를 밝히고 문서를 파싱하여 em 태그를 찾고 강조 표시된 단어 목록을 작성 하시겠습니까?

+1

문서에서 ** 모든 ** 스 니펫을 가져 와서 쉽게 추출 할 수 있습니다. [강조 표시 옵션] (http://wiki.apache.org/solr/HighlightingParameters)을 사용하여 문서의 깊숙이 깊숙이 침투하여 작은 크기의 스 니펫을 여러 개 가져와야합니다. 두 개의 필드에 중복 된 데이터가 필요할 수 있습니다 (예 : 못생긴). 한 필드는 읽을 수있는 스 니펫을 표시하고 다른 필드는 동일한 스템의 단어를 가져옵니다 (형태소 분석 참조). – aitchnyu

답변

1

나는 해결책을 찾기 위해 frag size (hl.fragsize), 동의어 (synonym.txt) 또는 형태소 분석 (단어의 변형에 도움이 될 수 있음)을 조사 할 것입니다. 당신은 물고기, 어업, 낚시를 모두 동의어로 똑같이 의미하도록 설정할 수 있습니다. 펼치기가 모두 작동하는 방식과 검색을 서로 바꿀지 여부를 이해하십시오. 또한 동의어 파일이나 쿼리를 사용하여 색인을 생성할지 여부를 확인하십시오. 색인 및 질의시간에 동의어를 사용하지 마십시오. 또한 강조 표시에서 여러 일치를 사용할 수있는 스위치가 있습니다.

관련 문제