Как установить позицию токена в передаваемом документе?
Мне нужна помощь в написании метода (setPostions), который занимает позицию токена, переданного в документе, таким образом, если doc уже присутствует в postionalIndex, это означает, что токен уже появился в документе. Если doc не существует в positionalIndex, это означает, что это первый раз, когда токен появился в документе
public class Token {
private String token;
private Map<Document, List<Integer>> positionalIndex;
public Token(String tok) {
positionalIndex = new HashMap<Document, List<Integer>>();
token = tok;
}
* @param doc
* @param p
*/
public void setPositions(Document doc, Integer p){
}
1 ответ
int index = doc.getText(0, doc.getLength()).indexOf(token);
positionalIndex.put(doc, new ArrayList<Integer>());
while (index >= 0) {
List<Integer> pos = positionalIndex.get(doc);
pos.add(index);
index = doc.getText(index + 1, doc.getLength()).indexOf(token);
}