표준 분석기를 사용하여 Lucene 색인을 검색 할 때 Luke을 사용하면 검색 대상 필드가 MY_VALUE 형식의 값을 포함하고 있음을 알 수 있습니다. 그러나 필드를 검색 할 때 : "MY_VALUE", 쿼리는 "my value"필드로 구문 분석됩니다.Lucene 검색 및 밑줄
밑줄 (_) 문자를 이스케이프하여 검색 할 수있는 간단한 방법이 있습니까?
편집 :
2010년 4월 1일 오전 11시 8분
내가 거기에 루씬 2.9.1에 대한 토크 나이에 버그가 그것을 전에 아마이 생각 PST
. 누가 복음을로드하고 숫자가있는 경우, 다음과 같은 토큰이 반환됩니다 "BB_HHH_FFFF5_SSSS"를 검색하려고 :"BB hhh_ffff5_ssss는"
몇 가지 테스트 후,이 때문에입니다 것으로 나타났습니다 수. 만약 내가 입력
"BB_HHH_FFFF_SSSS는"내가 얻을 수의 존재가이 있고 가정하지 않는 한이 시점에서
"BB의 HHH FFFF ssss는"
, 나는 토크 나이 버그쪽으로 기울고 있어요
나는 왜 그런지 보지 못한다.누구든지 확인할 수 있습니까?
아니요, 표준 분석기를 인덱서로 사용하여 이상한 것입니다. – Matt
표준 분석기를 사용하여 색인을 생성하면 색인에 "my"와 "value"가 두 개의 서로 다른 토큰으로 포함됩니다. "my value"(따옴표 포함)를 검색하면 결과를 얻을 수 있습니다. – Thomas
색인 생성에 사용하는 분석기를 다시 확인해 보겠습니다. StandardAnalyzer를 인덱싱에 사용했다면, StandardAnalyzer가 항상 밑줄로 나뉘기 때문에 MY_VALUE를 용어로 사용할 수 없습니다. – bajafresh4life