I think you're underestimating the required effort to make something like this work. The only way to make this work with a reasonable amount of effort is to dictate a strict syntax the user has to obey when entering his query. Think something roughly like SQL just with more natural keywords. For that you would have to look into parsers, grammars and domain specific languages. But if you would want to allow the user to enter the query in whatever words he chooses then you would have to resort to natural language processing and it will get extremely complex.
So, my suggestion: Either stick with the traditional approach and let your users enter their search criteria not with sentences but with UI controls - or build a domain specific language. For that, I would suggest these tools:
http://goldparser.org/[
^]
https://code.google.com/p/bsn-goldparser/[
^]
You will find examples on those pages.