Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Fuzzy Search
Message
De
24/09/2008 11:40:55
 
 
À
23/09/2008 17:15:28
Mike Yearwood
Toronto, Ontario, Canada
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Vista
Network:
Windows 2008 Server
Database:
MS SQL Server
Divers
Thread ID:
01349328
Message ID:
01350225
Vues:
29
>>>Hi.
>>>Anybody know if a 'Fuzy Search' can be done in Foxpro.
>>>Not exactly sure what is a Fuzzy Search but a few people have requested it .
>>>Regards,
>>>Gerard
>>
>>Hi Gerard,
>>
>>I did some research into this relatively recently. Here are some sites with algorithms that might help:
>>
>>http://www.creativyst.com/Doc/Articles/SoundEx1/SoundEx1.htm
>>http://fox.wikis.com/wc.dll?Wiki~ImproveSoundex
>>http://fox.wikis.com/wc.dll?Wiki~MetaphoneImplementation-SoundexAlternative
>>http://fox.wikis.com/wc.dll?Wiki~DoubleMetaphone-SoundexAlternative
>>
>>Now, having said that, :) I found they were all too slow for my purpose (searching through a huge database for possible matches). I ended up looking at tools like dtSearch and Netrics Search Server, both of which did admirable jobs, but both of which weren't cheap. My client decide Netrics was the one they wanted so I implemented the solution using that.
>
>Ummm. I recently incorporated DoubleMetaphone for surname searches. I added another field which holds the DoubleMetaphone code for that Surname. Of course, during a save, I update the surnamemetaphone field with the translated Surname. Then when the user does a search "Surname sounds like BLAH " I replace surname with the surnamemetaphone field and BLAH with the metaphone code. This yields the completely Rushmore optimized expression "upper(surnamemetaphone) = 'PL'". It is extremely fast. :)

Hi Mike,

it was 3 years ago that I did this. The search was against a medical database of all the drugs that WHO have recorded and I had to search multiple fields (I think 5) for a possibly matching string. The search speed was slow and the matches weren't great. But then again, my memory ain't great either so everything is a bit fuzzy anyhow :)
Frank.

Frank Cazabon
Samaan Systems Ltd.
www.samaansystems.com
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform