Hi Danilo,
As I understand it (and I think the other responders didn't get this), you want the user to be able to specify multiple conditions, right? So the actual user input may be "cat OR dog" and then everything containing either the word "cat" or the word "dog" (or both) is selected?
If that's the case, then you could take two routes. The first is using an Aggregate. Aggregates are powerful, but they can't deal with dynamic conditions, so if you walk this route, you need to limit the amount of different search terms a user can enter. Say a user may enter three search terms, and you store these in Local Variables "Term1", "Term2" and "Term3", and you have an attribute "Name" that you want to filter on, you need to add three Filters to the Aggregate, all looking like this (but with the right Local Variable names):
Term1 = "" or Name like "%" + Term1 + "%"
Secondly, you could use a SQL query, and add a dynamic WHERE clause. You pass it as a Query Parameter, with its Expand Inline Property set to Yes. However, be very wary of SQL injections in this case, as you put user input directly in the query. See e.g. this post on how to prevent that.