On Apr 2, 10:32 pm, Kyle Hunter <keletmas... / gmail.com> wrote:
> Hello, I have an array. It contains approximately twenty elements which
> are strings. I also have one string - this string was obtained using an
> OCR system. One of the strings in the array should 'match' the string
> gotten using the OCR system - unfortunately OCRs aren't perfect!
>
> I want to take this string, and compare it to every string in the array,
> and attempt to return the closest match.
>
> I.E.,
> array = ['Hello there, how are you?', 'What did you do over your
> break?', 'I like my coffee brown.", "I just bought a new car."]
> string = "What did you d0 over your brcak?"
>
> And then have my comparison function return array[1]. As you can see,
> string has some 'OCR errors' - it's usually 80-95% accurate, if not
> dead-on.
>
> --
> Thanks, Kyle 'Phenax' Hunterhttp://keletech.org/blog/
> --
> Posted viahttp://www.ruby-forum.com/.

It sounds like what you want is something like the Levenshtein
distance (http://en.wikipedia.org/wiki/Levenshtein_distance).

HTH,
Chris