Каково практическое использование функций metaphone() и soundex() в PHP?

Metaphone и Soundex — это фонетические алгоритмы индексации строк по их английскому произношению.

Вы когда-нибудь использовали функции metaphone() или soundex(), которые присутствуют в стандартной библиотеке PHP?

Зачем? Каково реальное использование этих функций?


person Tom Pažourek    schedule 10.07.2010    source источник


Ответы (2)


В более общем смысле, soundex и metaphone можно использовать для поиска строк, которые звучат одинаково при произнесении вслух.

Это можно использовать за пределами ситуаций, когда вы просто пытаетесь найти «правильное» написание. Его можно использовать, например, для выявления ошибок, таких как неправильное использование правильно написанного слова, которое звучит как правильное.

Еще одно привлекательное применение — попытаться найти правильное имя. Когда я говорю кому-то, что меня зовут «Николас», есть по крайней мере два «альтернативных» варианта написания, которые они часто пытаются использовать: Николас и Николас. Когда они вводят его и он не находит меня в базе данных, можно использовать soundex или метафон, чтобы сказать: «Николаса Найта нет, но есть Николас Найт».

Однако степень, в которой эти алгоритмы на самом деле работают, несколько спорна. Иногда они приходят к довольно странным результатам.

person Nicholas Knight    schedule 10.07.2010
comment
Одним из возможных примеров из реальной жизни является Facebook, который вполне может использовать soundex() или metaphone() (или эквивалентные функции) для помощи в поиске имен, потому что, как вы упомянули, люди часто ищут людей, основываясь только на звуке их имени. - person Chaim; 02.11.2011

Вы можете использовать их при проверке орфографии. Затем вы могли бы легко заметить, что, например. «форензика» хорошо сочетается с «криминалистикой».

person Will A    schedule 10.07.2010
comment
Это плохой пример для soundex, потому что ведущая буква всегда является первой буквой слова, поэтому phorensics — это P652, а forensics — это F652. - person Michael Mrozek; 10.07.2010
comment
Д'о. :) Хороший звонок - который приводит меня к телефону / телефону (что, вероятно, является еще одним плохим примером, в зависимости от того, на каком языке вы говорите!). Как метафон справляется с моим хитрым примером? - person Will A; 10.07.2010
comment
Phorensics и forensics оба возвращают FRNSKS, используя metaphone. - person Sam; 16.03.2011