http://www.perlmonks.org?node_id=1012697


in reply to Re^14: partial match between 2 files
in thread partial match between 2 files

Hello lakssreedhar,

As I understand it, you’re writing a script which accepts as input a word (which I will call the target) and the name of a dictionary file. The purpose of the script is to identify the best match for the target (if any) among the entries in the dictionary. Well, there would seem to be four possible ways in which a dictionary entry can match the target word:

  1. They are identical
  2. The target is a substring of the dictionary entry
  3. The dictionary entry is a substring of the target
  4. They share a common substring.

I suppose it’s obvious that if (1) is satisfied, this is the best match. And from earlier posts in this thread, it appears that if none of (1), (2), or (3) is true, then (4) looks for the the longest common substring (i.e., the “best” match is the one with the longest substring in common). But now things get murky. What if both (2) and (3) are satisfied? For example, the target is reread and the dictionary contains both read and rereading? And this is only one example of the sort of edge cases that need to be considered.

suppose my dictionary has words crick, cricketer and testing input is cricking,the match should be to crick

OK, but why? What are the rules for a “best match”? These rules need to be specified very precisely (and of course only you can do this, since only you know what your script is intended to do).

Here is how I would approach the problem:

Hope that gives you some help,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,

Replies are listed 'Best First'.
Re^16: partial match between 2 files
by lakssreedhar (Acolyte) on Jan 12, 2013 at 04:46 UTC

    ok let me try it out this ways.Thanks