lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicolas Lalevée <nicolas.lale...@anyware-tech.com>
Subject Re: get terms by positions
Date Mon, 02 Oct 2006 22:04:20 GMT
Le Lundi 02 Octobre 2006 23:06, Renzo Scheffer a écrit :
> Hi,
>
>
>
> can anybody be so kind to tell me if it is possible to search a Term by its
> position?
>
>
>
> I search a term (for excample "soccer") and get back the DocId's and
> positions as follows:
>
>
>
>
>
> TermPositions termPos = reader.termPositions(new
> Term("contents","soccer"));
>
> while(termPos.next()){
>
> int freq = termPos.freq();
>
> for(int i=0; i<freq; i++){
>
>
>
>       int docNumber = termPos.doc();
>
>       int position = termPos.nextPosition();
>
> System.out.println("DocId: "+docNumber+"; Pos:"+position);
>
> }
>
>
>
>
>
>
>
> Output:
>
>
>
> DocId: 0; Pos: 1
>
> DocId: 0; Pos: 4
>
> DocId: 0; Pos: 7
>
> DocId: 1; Pos: 3
>
> DocId: 1; Pos: 7
>
>
>
> Now I try to get back terms, one position before/after "soccer". I
> considered to take the
>
> Position and increase or decrease it. But I can't find a way to get back a
> term, according to the given Position.
>
> Can anybody help me?
>

I think this is a non-sense to try to find a term. In Lucene, you search with 
a term, you are not trying to get some. Basically, in Lucene, you have a list 
of term pointing on documents, not the reverse.

Maybe if you explain why you are trying to do that, we can find a better way 
to do it.

Nicolas

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message