| airplane |
will find all documents that contain the word airplane.
The following section describes various aspects of searching with Swish-e.
You can use the Boolean operators and, or, near or not in searching. Without these Boolean operators Swish-e will assume you're and'ing the words together. The operators are not case sensitive. These three searches are the same:
| foo bar |
| bar foo |
| foo AND bar |
The not operator inverts the results of a search.
| not foo |
finds all the documents that do not contain the word foo.
Parentheses can be used to group searches.
| not (foo and bar) |
The result is all documents that have none or one term, but not both.
To search for the words and, or, near or not, place them in a double quotes.
| "not" |
will search for the word "not".
Other examples:
| smilla or snow |
Retrieves files containing either the words "smilla" or "snow".
| smilla snow not sense |
Example:
| smilla near5 snow |
would match the document if the words smilla and snow appeared within 5 positions of one another.
A near search with no argument or argument of 0 is the same as an and search.
Two different wildcard characters are available, each evoking different behaviour.
The * means "match zero or more characters."
The ? means "match exactly one character."
The wildcard * may only be used at the end of a word. Otherwise * is considered a normal character (i.e. can be searched for if included in the WordCharacters? directive).
Example:
| librarian |
this query only retrieves files which contain the given word.
On the other hand:
| librarian* |
retrieves "librarians", "librarianship", etc. along with "librarian".
Note that wildcard searches combined with word stemming can lead to unexpected results. If stemming is enabled, a search term with a wildcard will be stemmed internally before searching. So searching for running* will actually be a search for run*, so running* would find runway. Also, searching for runn* will not find running as you might expect, since running stems to run in the index, and thus runn* will not find run.
The ? wildcard matches exactly one character, but may not be used at the start of a word.
Example:
| 's?ow' |
will match snow, slow and show but not strow.
This:
| '?how' |
will throw an error.