You need a meta data about the data you are searching and then have a sound matching algorithm to find the words that resembles.
As an example I am searching where the following text is in the database :
"You need a meta data about the data you are searching."
Now the meta data would be the following
Now you also have the suggestions based on your meta
say a user types
serching then you don't have the stuff in the meta data and so you suggest him the nearest match like searching.
The meta data that I am talking about can be a dictionary as well.