5

Interesting challenge; my client enters some product information in a SQL database. The product is a painting of a famous old Russian composer called Rachmaninoff. So that name is in the description field. Now, only a few of their customers searching for products know exactly how to spell this name, but most of the time it's misspelled. Besides misspelling there are also a lot of international customers who just write this name completely different like, Rachmaninow, Rahmaninov, Рахманінаў.

If i put any of these misspellings or translations in Google it (almost) always knows how to correct it and to redirect me straight to the right page.

Does anyone know what my possibilities are to get some of this magic in my product search? Are there some API's i can use? Some super free text option that i don't know of? Or ...

4

1 に答える 1

2

同様の問題をかなりの成功を収めて解決しました。電話で指定された名前で人(ドイツ人の名前)を検索することです。

例:非常に一般的なドイツ語のラストネーム「Schmidt」、「Schmitt」、「Schmied」、「Schmid」、「Schmit」、「Schmiedt」は、声で指定するとほとんど区別できません。これを「Sylvia」または「Silvia」または「Sylvya」の名と組み合わせると、「こんにちは、Sylvia Schmidtです、顧客番号を忘れました」という発信者がすぐに見つかる可能性はありません。

私たちの解決策は、シノフォンのリストを作成することでした。たとえば、(疑似コードで、ドイツ語の場合):

{consonant}+ := {consonant}
ie := i
ii := i
dt* := t
y|j := i
{vocal}v := {vocal}f

など、あなたはドリフトを取得します。これで、検索を可能にするために、シノフォンで変換された文字列を元の文字列とともに保存しました。これは本当にうまくいきます。

Soundex()MySQLには英語の文字列用の機能があることを理解しています。MSSQLにも似たようなものがあると思います。

于 2012-06-26T22:49:37.630 に答える