operator OR:
hello | world
operator NOT:
hello -world
hello !world
grouping:
( hello world )
Here's an example query which uses all these operators:
( cat -dog ) | ( cat -mouse)
There always is implicit AND operator, so "hello world" query actually means "hello & world".
OR operator precedence is higher than AND, so "looking for cat | dog | mouse" means "looking for ( cat | dog | mouse )" and not "(looking for cat) | dog | mouse".