


Search engines retrieve information from an index-database or from
Internet directly, upon request of a user.
The user's input is normally a set of words or phrases or a regular expression.
Typical operations that are provided are:
- Ignoring small stop words. This feature usually cannot be turned off.
- Selection between exact word match or substring match.
- Selection between case sensitive or caseless search.
- Some boolean operations, usually a subset of and,
or, not and parentheses.
- Matching phrases, i.e. finding adjacent words in a
document, like "World Wide Web".
- Proximity searching, i.e. finding documents containing the given
words in each other's neighborhood, like within 10 words from each other.
Sometimes it is possible to require the words to appear in a certain order.
- Weighing search terms, i.e. indicating that matching some word
is more important than finding some other given words.
- Searching for expressions or structural parts of documents is
offered by very few search tools. (One exception is searching for words
that occur in the <title> element.)
No search engine offers all the possibilities mentioned above.
It's not straightforward to select the best engine for each job.