Gmail can forward messages which match certain words and not others, but it doesn't allow the weighting technique you suggested. Try the following:
- In Gmail navigate to Settings>Filters and Blocked Addresses
- Create a new filter which has the words "gas invoice truck fuel" and doesn't have "ship waybill ups fedex". Click Continue and select Forward it to: (address 1).
- Then create another new filter which has the words "ship waybill ups fedex" and doesn't have "gas invoice truck fuel". Click Continue and select Forward it to: (address 2).
- Any of those words in either the message subject or body will trigger a rule.
- If any of the "has the words" is present, that rule will be triggered.
- But if any of the "doesn't have" words is present, the "has the words" forwarding will be overridden and the message will not be forwarded.
So I agree that Gmail can't do exactly what you request. Normal sieve code can't really do the weighting you requested either. But here is what you could do in a system which uses sieve code (such as Fastmail):
- You could forward messages with any of certain words (gas OR truck OR fuel).
- You could forward message with all of a list of words (waybill AND ship AND UPS).
- You could forward a combination of AND and OR:
(gas OR fuel) AND (ups OR fedex)
- You can add NOT or other conditions:
(gas OR fuel) AND (ups OR fedex) BUT NOT from jimmy
Bill