Есть поиск по базе mysql c помощью LIKE, хотелось бы обрубать окончания русских слов с гласными. Например, пользователь вводит слово "работа" или "работаю", в любом из этих случаев окончания обрубаются.
Пока только крутится такое: сделать транслитерацию ввода, поискать регуляркой символы в конце и отрубить.
Но не слишком ли затратно?
1. dcc0 - 10 Августа, 2016 - 22:57:48 - перейти к сообщению
2. OrmaJever - 11 Августа, 2016 - 00:14:16 - перейти к сообщению
есть крутая штука sphinx называется, она умеет делать то что вам надо
3. Строитель - 11 Августа, 2016 - 01:01:19 - перейти к сообщению
OrmaJever пишет:
Не знаю, будет ли актуальным мой ответ после вашего поста, но раз уж написал код, то опубликуюесть крутая штука sphinx называется, она умеет делать то что вам надо
(Добавление)
dcc0 пишет:
Набросал рекурсивную функцию, она удаляет все гласные в конце слова. Транслит не нужен сделать транслитерацию ввода, поискать регуляркой символы в конце и отрубить.
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- function delLastLetter($text) {
- $vowels = ['а','е','ё','и','о','у','ы','ю','я'];
- return $out;
- }
- echo delLastLetter('Работать'); // Работать
- echo delLastLetter('Работаю'); // Работ
- echo delLastLetter('Работа'); // Работ