#fuzzy-search #cjk
#нечеткий поиск #cjk
Вопрос:
У меня есть некоторые данные на китайском и японском языках, и я хочу, чтобы можно было осуществлять поиск по их латинизации (пиньинь для китайского, ромадзи для японского). Предположим, что латинизации уже предоставлены, разделенные слогами.
например. текст "示例文本"
, который преобразуется в ["shi", "li", "wen", "ben"]
латинизацию.
Пользователи должны иметь возможность сопоставить это, набрав
- целые слоги, с пробелом или без него, например.
shi li wen ben
илиshiliwenben
- инициалы или первые несколько букв слогов, напр.
shlwb
илиslwb
- они также могут вводить только часть строки, например.
wenben
илиwb
(эти примеры соответствуют двум последним слогам приведенного выше текста).
Есть ли элегантный способ реализовать это?
(примечание: я не указал какой-либо язык программирования в этом вопросе, потому что я хочу реализовать это на разных языках. Если ваш ответ зависит от языка или требует определенных библиотек, пожалуйста, поясните это. Спасибо вам!)
Комментарии:
1. Хотя кажется возможным искать целые слоги и часть строки, я не вижу, как вы можете реализовать частичные строки. Например, что заставляет shlwb однозначно ссылаться на shi li wen ben вместо, например, shi hao li wen ben (кстати, я не знаю, правильное ли это предложение на китайском языке)
2. Re Hirabayashi Taro: оба должны возвращаться как результаты.