I'm working on a quiz system that will allow users to enter text as an answer. The question could be something simple to start with, looking for a short phrase, or a select few words as the "correct" answer.
Having a single correct phrase however could be limiting. It may be that the user misses out a few words, writes in short hand, supplies a partial answer, or something along those lines.
I'm allowed to make this as simple, or as complex as I like. If I decide I want to keep it easy, then forcing users to be rather more explicit is a viable option. However if I have time, I would also like to think about allowing a little vagueness or spelling errors, or even doing some analysis of the answer to be smarter about how I handle it.
Lets start somewhere in the middle. I would like to analyse a (short) block of text entered by a user for spelling mistakes and key words that would make the answer a match. What theories should I be looking at to achieve this?
If its any help, I will be using PHP, although I'm certain the principles will be the same.