Search supports single and multiple character wildcard searches within single terms.
To perform a single character wildcard search use the "?" symbol.
To perform a multiple character wildcard search use the "*" symbol.
The single character wildcard search looks for terms that match that with the single character replaced. For example, to search for "cane" or "care" you can use the search:
ca?e
Multiple character wildcard searches looks for 0 or more characters. For example, to search for "amoxicillin", "dicloxacillin" or "ampicillin", you can use the search:
*cillin
You can also use the wildcard searches in the middle of a term.
am*cillin
This search supports fuzzy searches based on the Levenshtein Distance, or Edit Distance algorithm. To do a fuzzy search use the tilde, "~", symbol at the end of a Single word Term. For example to search for a term similar in spelling to "roam" use the fuzzy search:
roam~
This search will find terms like foam and room.
Note: The search will automatically do a fuzzy search if no results are returned for a normal search.
You can search any field by typing the field name followed by a colon ":" and then the term you are looking for.
If you want to find the entry entitled "petrolatum gauze" whose manufacturer contains the text "kendall", you can enter:
name:"petrolatum gauze" manu_name:kendall
Note: The field is only valid for the term that it directly precedes, so the query
name:petrolatum gauze
Will only find "petrolatum" in the title field. It will find "gauze" in any field.
The OR operator links two terms and finds a matching entry if either of the terms exist in a entry. This is equivalent to a union using sets. The symbol || can be used in place of the word OR.
To search for entries that contain either "naproxen sodium" or just "naproxen" use the query:
"naproxen sodium" OR naproxen
The AND operator matches entries where both terms exist anywhere in the text of a single entry. This is equivalent to an intersection using sets. The symbol && can be used in place of the word AND.
To search for entries that contain "jakarta apache" and "Apache Lucene" use the query:
naproxen AND 500MG
The NOT operator excludes entries that contain the term after NOT. This is equivalent to a difference using sets. The symbol ! can be used in place of the word NOT.
To search for entries that contain "naproxen" but not "sodium" use the query:
naproxen NOT sodium
This search supports using parentheses to group clauses to form sub queries. This can be very useful if you want to control the boolean logic for a query.
To search for either "naproxen" or "docusate" and "sodium" use the query:
(naproxen OR docusate) AND sodium
This eliminates any confusion and makes sure that sodium must exist and either term naproxen or docusate may exist.