SearchResult
Inheritance: java.lang.Object
All Implemented Interfaces: java.lang.Iterable
public abstract class SearchResult implements Iterable<FoundDocument>
Represents a search result matching a search query.
Learn more
The example demonstrates a typical usage of the class.
String indexFolder = "c:\\MyIndex\\";
String documentFolder = "c:\\MyDocuments\\";
// Creating an index
Index index = new Index(indexFolder);
// Indexing documents from the specified folder
index.add(documentFolder);
// Setting search options
SearchOptions options = new SearchOptions();
options.getFuzzySearch().setEnabled(true); // Enabling the fuzzy search
options.getFuzzySearch().setFuzzyAlgorithm(new TableDiscreteFunction(3)); // Setting the maximum number of differences to 3
// Search for documents containing the word 'Einstein' or the phrase 'Theory of Relativity'
SearchResult result = index.search("Einstein OR \"Theory of Relativity\"", options);
// Printing the result
System.out.println("Documents: " + result.getDocumentCount());
System.out.println("Total occurrences: " + result.getOccurrenceCount());
for (int i = 0; i < result.getDocumentCount(); i++) {
FoundDocument document = result.getFoundDocument(i);
System.out.println("\tDocument: " + document.getDocumentInfo().getFilePath());
System.out.println("\tOccurrences: " + document.getOccurrenceCount());
for (int j = 0; j < document.getFoundFields().length; j++) {
FoundDocumentField field = document.getFoundFields()[j];
System.out.println("\t\tField: " + field.getFieldName());
System.out.println("\t\tOccurrences: " + document.getOccurrenceCount());
// Printing found terms
if (field.getTerms() != null) {
for (int k = 0; k < field.getTerms().length; k++) {
System.out.println("\t\t\t" + field.getTerms()[k] + " - " + field.getTermsOccurrences()[k]);
}
}
// Printing found phrases
if (field.getTermSequences() != null) {
for (int k = 0; k < field.getTermSequences().length; k++) {
String[] terms = field.getTermSequences()[k];
String sequence = "";
for (int m = 0; m < terms.length; m++) {
sequence += terms[m] + " ";
}
System.out.println("\t\t\t" + sequence + " - " + field.getTermSequencesOccurrences()[k]);
}
}
}
}
Constructors
Constructor | Description |
---|---|
SearchResult() |
Methods
Method | Description |
---|---|
getDocumentCount() | Gets the number of documents found. |
getOccurrenceCount() | Gets the total number of occurrences found. |
getTruncated() | Gets a value indicating that the result is truncated. |
getWarnings() | Gets a warnings describing the result. |
getNextChunkSearchToken() | Gets a chunk search token for searching the next chunk. |
getStartTime() | Gets the start time of the search. |
getEndTime() | Gets the end time of the search. |
getSearchDuration() | Gets the search duration in seconds. |
getFoundDocument(int index) | Gets the found document by index. |
iterator() | Returns an iterator that iterates through the collection of the documents found. |
SearchResult()
public SearchResult()
getDocumentCount()
public abstract int getDocumentCount()
Gets the number of documents found.
Returns: int - The number of documents found.
getOccurrenceCount()
public abstract int getOccurrenceCount()
Gets the total number of occurrences found.
Returns: int - The total number of occurrences found.
getTruncated()
public abstract boolean getTruncated()
Gets a value indicating that the result is truncated.
Returns: boolean - A value indicating that the result is truncated.
getWarnings()
public abstract String getWarnings()
Gets a warnings describing the result.
Returns: java.lang.String - A warnings describing the result.
getNextChunkSearchToken()
public abstract ChunkSearchToken getNextChunkSearchToken()
Gets a chunk search token for searching the next chunk.
Returns: ChunkSearchToken - A chunk search token for searching the next chunk.
getStartTime()
public abstract Date getStartTime()
Gets the start time of the search.
Returns: java.util.Date - The start time of the search.
getEndTime()
public abstract Date getEndTime()
Gets the end time of the search.
Returns: java.util.Date - The end time of the search.
getSearchDuration()
public abstract double getSearchDuration()
Gets the search duration in seconds.
Returns: double - The search duration in seconds.
getFoundDocument(int index)
public abstract FoundDocument getFoundDocument(int index)
Gets the found document by index.
Parameters:
Parameter | Type | Description |
---|---|---|
index | int | The index of a found document. |
Returns: FoundDocument - The found document.
iterator()
public abstract Iterator<FoundDocument> iterator()
Returns an iterator that iterates through the collection of the documents found.
Returns: java.util.Iterator<com.groupdocs.search.results.FoundDocument> - An iterator that can be used to iterate through the collection of the found documents.