Обсуждение: Fuzzy text search

Поиск
Список
Период
Сортировка

Fuzzy text search

От
jennyw
Дата:
We've heard that PostgreSQL can do fuzzy search, but haven't had much
luck. I'm brand new to PostgreSQL, so this might be completely obvious
for an experienced user.

Are there any how-tos on fuzzy text searching? Someone said to try using
tsearch2, but it seems that it does full-text searching, but not fuzzy
search. Ideally, we'd like to use that w/ a fuzzy search option. In
particular, if someone searches for "imat" we want to return results
including "immaterial" and "imaterial" (so misspellings plus partial match).

Thanks!

Jen




Re: Fuzzy text search

От
Martijn van Oosterhout
Дата:
On Mon, Nov 14, 2005 at 07:46:51AM -0800, jennyw wrote:
> We've heard that PostgreSQL can do fuzzy search, but haven't had much
> luck. I'm brand new to PostgreSQL, so this might be completely obvious
> for an experienced user.
>
> Are there any how-tos on fuzzy text searching? Someone said to try using
> tsearch2, but it seems that it does full-text searching, but not fuzzy
> search. Ideally, we'd like to use that w/ a fuzzy search option. In
> particular, if someone searches for "imat" we want to return results
> including "immaterial" and "imaterial" (so misspellings plus partial match).

In the contrib directory, there is a directory fuzzystrmatch which
includes code for various forms of fuzzy matching.

Good luck.
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

Вложения

Re: Fuzzy text search

От
Hannes Dorbath
Дата:
On 14.11.2005 16:46, jennyw wrote:
> We've heard that PostgreSQL can do fuzzy search, but haven't had much
> luck. I'm brand new to PostgreSQL, so this might be completely obvious
> for an experienced user.
> Are there any how-tos on fuzzy text searching? Someone said to try using
> tsearch2, but it seems that it does full-text searching, but not fuzzy
> search. Ideally, we'd like to use that w/ a fuzzy search option. In
> particular, if someone searches for "imat" we want to return results
> including "immaterial" and "imaterial" (so misspellings plus partial
> match).


tsearch2 + pg_trgm might be what your are looking for, both can be found
in the contrib directory.


--
Regards,
Hannes Dorbath

Re: Fuzzy text search

От
Teodor Sigaev
Дата:

jennyw wrote:
> We've heard that PostgreSQL can do fuzzy search, but haven't had much
> luck. I'm brand new to PostgreSQL, so this might be completely obvious
> for an experienced user.
> Are there any how-tos on fuzzy text searching? Someone said to try using
> tsearch2, but it seems that it does full-text searching, but not fuzzy
> search. Ideally, we'd like to use that w/ a fuzzy search option. In
> particular, if someone searches for "imat" we want to return results
> including "immaterial" and "imaterial" (so misspellings plus partial
> match).
>

Look at contrib/pg_trgm. If you want fulltext search with mispelling correction
then read "Tsearch2 Integration" in contrib/pg_trgm/README.


--
Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                    WWW: http://www.sigaev.ru/