Eggs and egg is an example of stemming, see http://en.wikipedia.org/wiki/Stemming
The milk example as stated could be solved using fulltext indexing and searching.
I think your approach might work, but you could get results much more quickly using existing database fulltext search.