2012-03-01 2 views
0

Я реализовал аналогичный поиск очень хорошо. Но есть одна проблема с единицами. Поскольку единицы являются преттичными, аналогичный поиск не так хорош.Similar_search для физических единиц

я создать рецепт с:

1 kg Tomato 

Если пользователь пишет:

1 gk Tomato 

подобный поиск не так хорошо. Есть ли прекрасный способ сделать это? Сейчас я просто использую массив и сравниваю единицы. Мой массив выглядит так:

array(kg, gk, kilgramm) 

Если есть совпадение, возьмите этот аппарат. Есть ли лучший способ сделать это?

Спасибо!

ответ

1

До тех пор, пока вы смотрите только на небольшое количество терминов, желательно коротких, вы можете использовать алгоритм levenshtein, чтобы найти стоимость преобразования одной строки в другую. Это дешевле, чем аналогичный_text, поэтому, если это работает, levenshtein, вероятно, будет работать отлично.

Смежные вопросы