입력 문자열에서 구두점을 제거하는 StandardAnlyzer
을 사용하여 색인을 생성하는 필드입니다. 내 입력 문자열은 @
, #
, -
등lucene에서 '@', '#'과 같은 특수 문자를 인덱싱 및 검색
예와 같은 특수 문자가 포함되어 인덱스 된 데이터는 사용자 ID와 같은 값으로 구성 될 수있다 : [email protected]
, ABC#DF
내가 BooleanQuery이 uesrid 통과 인덱스를 업데이트하려고 : [email protected]
문서 [email protected]
.IE로 시작하는 모든 값을 삭제 쿼리 위에 사용하여 현재 indexex 삭제 writer.updateDocuments(Term,document);
사용 writer.deletedocuments(query);
하고 업데이트 인덱스를 사용하여 이전 문서를 삭제하기 사용자 ID 값이 [email protected]
, [email protected]
인 s도 삭제됩니다.
위의 특수 문자가 포함 된 특정 문서를 색인하고 업데이트하는 솔루션을 제안 할 수 있습니까?
고맙습니다.
감사합니다.
Chakradhar
귀하의 소중한 고마워요. NOT_ANALYZED로 사용자 ID 필드를 인덱싱하고 KetWordAnalyzer를 사용하여 용어를 검색했습니다. 그리고 효과가있었습니다. – Chakri
쿨! 답변을 수락 된 것으로 표시 할 수 있습니까? – jpountz
KeyWordAnalyzer를 사용하여 색인을 검색 할 때 soultion이 작동합니다. StandardAnalyzer로 사용자 ID 필드를 인덱싱하고 keyWordAnalyzer 또는 특수 문자를 인덱싱하는 다른 분석기를 사용하여 인덱스를 검색하는 방법이 있습니까 – Chakri