Я создаю бэкэнд и пытаюсь решить следующую проблему.
- Клиенты отправляют текст на бэкэнд (в среднем около
2000
символов) - Конечная точка бэкэнд, которая получает запрос, должна применить подсветку фразы к представленному тексту
-
Существует приблизительно
80k
для соответствия. Фраза - простой объект:{ 'phrase': 'phrase to match' 'link': 'link_url' }
-
После нахождения всех совпадений фраз, существующих в тексте, бэкэнд возвращает клиенту то, что соответствовало - в основном карта:
range in text -> phrase
Большинство сделано. Я собираюсь заняться кодированием фразы, соответствующей части. Все остальное работает плавно. Поскольку я не хочу изобретать велосипед, я попытался найти в Google библиотеку Python, которая эффективно выполняет поиск фраз (из огромного списка) в тексте. Однако я ничего не мог найти.
Я проверил набор инструментов BlueSoup и Natural Language Toolkit. Однако они, похоже, не делают то, что я ищу.
Вы, ребята, знаете, есть ли библиотека, которая была бы полезной в такой задаче? Похоже, что это обычная вещь для реализации, и я не хочу идти обычай, если для этого есть хорошо установленная библиотека.