Существуют ли публичные алгоритмы семантического поиска вхождений подстроки в строке?

Имеется строка:
Lorem Ipsum является стандартной "рыбой" для текстов на латинице с начала XVI века.
Существует компания рога и копыта, производящая рога изобилия. Рог изобилия является...

Имеется список ключевых слов:
['lorem ipsumi', 'рог изобилия', ...]

Необходимо найти вхождения(если таковы имеются) каждого ключевого слова в строке используя неявный поиск. Т.е. результатом работы должен быть список найденных ключевых слов:
[
'lorem ipsumi' => ['Lorem Ipsum'],
'рог изобилия' => ['рога изобилия', 'Рог изобилия'],
...]

Товарищи, существуют ли реализованный алгоритм такого поиска?
P.s. реализация необязательно на PHP
  • Вопрос задан
  • 980 просмотров
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
продвинутый чайник
Solr умеет выводить подсветку найденных результатов в тексте. https://lucene.apache.org/solr/guide/6_6/highlight...
Sphinx Search/Manticore тоже, см. SNIPPET()
mysql>  CALL SNIPPETS('this is my hello world document text I am snippeting now', 'myindex', 'hello world', 5 as limit_words);
+------------------------------------------------+
| snippet                                        |
+------------------------------------------------+
|  ...  my <b>hello world</b> document text ...  |
+------------------------------------------------+
1 row in set (0.00 sec)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы